Teladoc Health Solo External API
API Endpoint
https://demo.visitnow.orgThis API is used to sync patient data with Solo Platform
Patients ¶
This section groups patient resources.
Patient ¶
A Patient is the central object utilized by the Teladoc Health Solo API.
Headers
Content-Type: application/json
Api-Key: YourApiKey
Headers
Content-Type: application/json
Body
{
"mrn": "MRN-123",
"accountNumber": "A-123",
"name": [
{
"use": "usual",
"family": "Mike Shinoda",
"firstName": "Mike",
"middleName": "",
"lastName": "Shinoda",
"alias": ""
}
],
"birthDate": "1983-08-15",
"gender": "male",
"maritalStatus": "married",
"telecom": [
{
"use": "home",
"system": "phone",
"value": "+1 (111) 111-1111"
},
{
"use": "home",
"system": "email",
"value": "mike_zzzzzzz@company.com"
}
],
"contact": [
{
"telecom": [
{
"use": "home",
"system": "phone",
"value": "phone"
},
{
"use": "home",
"system": "email",
"value": "someemail@email.email"
}
],
"name": []
}
],
"preferredLanguage": "English",
"race": "White",
"ethnicity": "not Hispanic or Latino",
"address": [
{
"city": "New York",
"use": "home",
"apartment": "",
"country": "USA",
"state": "NY",
"postalcode": "10019",
"line": [
"123 Main St",
""
]
}
],
"active": true,
"deceased": true,
"deceasedAt": "2020-03-31 10:12 AM",
"familyMember": false, // deprecated
"isLinkedByEmail": false,
"sharedEmailGroup": { // [object|null] (only needed if isLinkedByEmail is true)
"type": "family",
"name": "Family Name"
}
}
Get PatientGET/qapi/v1/patients/{patient_id}
Get Patient demographics.
- patient_id
string
(required) Example: 1The id of the Patient.
Headers
Content-Type: application/json
Api-Key: YourApiKey
Headers
Content-Type: application/json
Body
{
"mrn": "MRN-123",
"accountNumber": "A-123",
"name": [
{
"use": "usual",
"family": "Mike Shinoda",
"firstName": "Mike",
"middleName": "",
"lastName": "Shinoda",
"alias": ""
}
],
"birthDate": "1983-08-15",
"gender": "male",
"maritalStatus": "married",
"telecom": [
{
"use": "home",
"system": "phone",
"value": "+1 (111) 111-1111"
},
{
"use": "home",
"system": "email",
"value": "mike_zzzzzzz@company.com"
}
],
"contact": [
{
"telecom": [
{
"use": "home",
"system": "phone",
"value": "phone"
},
{
"use": "home",
"system": "email",
"value": "someemail@email.email"
}
],
"name": []
}
],
"preferredLanguage": "English",
"race": "White",
"ethnicity": "not Hispanic or Latino",
"address": [
{
"city": "New York",
"use": "home",
"apartment": "",
"country": "USA",
"state": "NY",
"postalcode": "10019",
"line": [
"123 Main St",
""
]
}
],
"active": true,
"deceased": true,
"deceasedAt": "2020-03-31 10:12 AM",
"familyMember": false, // deprecated
"isLinkedByEmail": false,
"sharedEmailGroup": { // [object|null] (only needed if isLinkedByEmail is true)
"type": "family",
"name": "Family Name"
}
}
Get Patient with SPIDGET/qapi/v1/patients/id/type/SPID/value/{solo_patient_id}
Get Patient demographics.
- solo_patient_id
int
(required) Example: 1The Solo Patient ID (SPID).
Headers
Content-Type: application/json
Api-Key: YourApiKey
Body
{
"mrn": "MRN-123",
"accountNumber": "A-123", // [DEPRECATED]
"name": [
{
"use": "usual",
"family": "Mike Shinoda",
"firstName": "Mike",
"middleName": "",
"lastName": "Shinoda",
"alias": ""
}
],
"birthDate": "1983-08-15",
"gender": "male",
"maritalStatus": "married",
"telecom": [
{
"use": "home",
"system": "phone",
"value": "+1 (111) 111-1111"
},
{
"use": "home",
"system": "email",
"value": "mike_zzzzzzz@company.com"
}
],
"contact": [
{
"telecom": [
{
"use": "home",
"system": "phone",
"value": "phone"
},
{
"use": "home",
"system": "email",
"value": "someemail@email.email"
}
],
"name": []
}
],
"preferredLanguage": "English",
"race": "White",
"ethnicity": "not Hispanic or Latino",
"address": [
{
"city": "New York",
"use": "home",
"apartment": "",
"country": "USA",
"state": "NY",
"postalcode": "10019",
"line": [
"123 Main St",
""
]
}
],
"active": true,
"deceased": true,
"deceasedAt": "2020-03-31 10:12 AM",
"familyMember": false, // deprecated
"isLinkedByEmail": false,
"groupType": "family", // [string] (only needed if isLinkedByEmail is true)
"groupName": "Family Name" // [string] (only needed if isLinkedByEmail is true)
}
Headers
Content-Type: application/json
Body
[]
Update PatientPUT/qapi/v1/patients/{patient_id}
Updates Patient demographics.
Field deceasedAt
is required if deceased is true
. All other fields are optional.
Note: When deceased
is false or is not defined, and deceasedAt
is specified, an error should be received.
When familyMember
is specified, the patient will be added to a Family that may share an email address among several patients.
- patient_id
string
(required) Example: 1The id of the Patient.
Headers
Content-Type: application/json
Api-Key: YourApiKey
Body
{
"mrn": "MRN-123",
"accountNumber": "A-123", // [DEPRECATED]
"name": [
{
"use": "usual",
"family": "Mike Shinoda",
"firstName": "Mike",
"middleName": "",
"lastName": "Shinoda",
"alias": ""
}
],
"birthDate": "1983-08-15",
"gender": "male",
"maritalStatus": "married",
"telecom": [
{
"use": "home",
"system": "phone",
"value": "+1 (111) 111-1111"
},
{
"use": "home",
"system": "email",
"value": "mike_zzzzzzz@company.com"
}
],
"contact": [
{
"telecom": [
{
"use": "home",
"system": "phone",
"value": "phone"
},
{
"use": "home",
"system": "email",
"value": "someemail@email.email"
}
],
"name": []
}
],
"preferredLanguage": "English",
"race": "White",
"ethnicity": "not Hispanic or Latino",
"address": [
{
"city": "New York",
"use": "home",
"apartment": "",
"country": "USA",
"state": "NY",
"postalcode": "10019",
"line": [
"123 Main St",
""
]
}
],
"active": true,
"deceased": true,
"deceasedAt": "2020-03-31 10:12 AM",
"familyMember": false, // deprecated
"isLinkedByEmail": false,
"groupType": "family", // [string] (only needed if isLinkedByEmail is true)
"groupName": "Family Name" // [string] (only needed if isLinkedByEmail is true)
}
Headers
Content-Type: application/json
Body
[]
Update Patient with SPIDPUT/qapi/v1/patients/id/type/SPID/value/{solo_patient_id}
Update Patient demographics.
Field deceasedAt
is required if deceased is true
. All other fields are optional.
Note: When deceased
is false or is not defined, and deceasedAt
is specified, an error should be received.
When familyMember
is specified, the patient will be added to a Family that may share an email address among several patients.
- solo_patient_id
int
(required) Example: 1The Solo Patient ID (SPID).
Patients Collection ¶
A Collection of patients.
Headers
Content-Type: application/json
Api-Key: YourApiKey
Body
{
"id": "patientId",
"mrn": "MRN-123",
"accountNumber": "A-123", // [DEPRECATED]
"name": [
{
"use": "usual",
"family": "Mike Shinoda",
"firstName": "Mike",
"middleName": "",
"lastName": "Shinoda",
"alias": ""
}
],
"birthDate": "1983-08-15",
"gender": "male",
"maritalStatus": "married",
"telecom": [
{
"use": "home",
"system": "phone",
"value": "+1 (111) 111-1111"
},
{
"use": "home",
"system": "email",
"value": "mike_zzzzzzz@company.com"
}
],
"contact": [
{
"telecom": [
{
"use": "home",
"system": "phone",
"value": "phone"
},
{
"use": "home",
"system": "email",
"value": "someemail@email.email"
}
],
"name": []
}
],
"preferredLanguage": "English",
"race": "White",
"ethnicity": "not Hispanic or Latino",
"address": [
{
"city": "New York",
"use": "home",
"apartment": "",
"country": "USA",
"state": "NY",
"postalcode": "10019",
"line": [
"123 Main St",
""
]
}
],
"active": true,
"deceased": true,
"deceasedAt": "2020-03-31 10:12 AM",
"familyMember": false, // deprecated
"isLinkedByEmail": false,
"groupType": "family", // [string] (only needed if isLinkedByEmail is true)
"groupName": "Family Name" // [string] (only needed if isLinkedByEmail is true)
}
Headers
Content-Type: application/json
Body
12345 // [int] solo patient id
Create PatientPOST/qapi/v1/patients
Create a new Patient object.
Field id is required.
Field deceasedAt
is required if deceased is true
.
Note: When deceased
is false or is not defined, and deceasedAt
is specified, an error should be received.
When familyMember
is specified, the patient will be added to a Family that may share an email address among several patients.
Appointments ¶
This section groups appointment resources.
Appointments ¶
A Collection of patient appointments.
Headers
Content-Type: application/json
Api-Key: YourApiKey
Body
{
"date": 1499441179, // [timestamp] (optional) appointment date
"reasons": ["headache"], // [list of strings] (optional) appointment reasons
"duration": 900, // [int] (optional), should be in range [1, 86400], by default waiting room slot duration is used
"waitingRoom": "my waiting room", // [string] (required) waiting room name
"externalId": "2e96ed0e-0f80-4dc3-b2c1-42e65b789e56", // [string] (optional) appointment external id
"episodeOfCareId": "4e96ed0e-0f80-4dc3-b2c1-42e65b789e56", // [string] (optional) Episode of Care id
"accountNumber": "ABC123456789" // [string] (optional) Encounter id
}
Headers
Content-Type: application/json
Body
{
"id": 1, // [int] appointment id
"visitUrl": "https://linktoonlinecheckin..." // [string]
}
Create AppointmentPOST/qapi/v1/patients/{patient_id}/appointments
Create a new Appointment object.
Field waitingRoom is required.
- patient_id
string
(required) Example: 1The id of the Patient.
Headers
Content-Type: application/json
Api-Key: YourApiKey
Body
{
"date": 1499441179, // [timestamp] (optional) appointment date
"reasons": ["headache"], // [list of strings] (optional) appointment reasons
"duration": 900, // [int] (optional), should be in range [1, 86400], by default waiting room slot duration is used
"waitingRoom": "my waiting room", // [string] (required) waiting room name
"externalId": "2e96ed0e-0f80-4dc3-b2c1-42e65b789e56", // [string] (optional) appointment external id
"episodeOfCareId": "4e96ed0e-0f80-4dc3-b2c1-42e65b789e56", // [string] (optional) Episode of Care id
"accountNumber": "ABC123456789" // [string] (optional) Encounter id
}
Headers
Content-Type: application/json
Body
{
"id": 1, // [int] appointment id
"visitUrl": "https://linktoonlinecheckin..." // [string]
}
Create Appointment with HSIDPOST/qapi/v1/patients/HSID/{hsid}/appointments
Create a new Appointment object.
Available on PROD from November 22, 2023
Field waitingRoom is required.
- hsid
string
(required) Example: 12345Health System ID (HSID). This is the EHR patient ID shared with Solo via (mainly) HL7.
Headers
Content-Type: application/json
Api-Key: YourApiKey
Body
{
"date": 1499441179, // [timestamp] (optional) appointment date
"reasons": ["headache"], // [list of strings] (optional) appointment reasons
"duration": 900, // [int] (optional), should be in range [1, 86400], by default waiting room slot duration is used
"waitingRoom": "my waiting room", // [string] (required) waiting room name
"externalId": "2e96ed0e-0f80-4dc3-b2c1-42e65b789e56", // [string] (optional) appointment external id
"episodeOfCareId": "4e96ed0e-0f80-4dc3-b2c1-42e65b789e56", // [string] (optional) Episode of Care id
"accountNumber": "ABC123456789" // [string] (optional) Encounter id
}
Headers
Content-Type: application/json
Body
{
"id": 1, // [int] appointment id
"visitUrl": "https://linktoonlinecheckin..." // [string]
}
Create Appointment with SPIDPOST/qapi/v1/patients/id/type/SPID/value/{solo_patient_id}/appointments
Create a new Appointment object.
Field waitingRoom is required.
- solo_patient_id
int
(required) Example: 1The Solo Patient ID (SPID).
Appointments Link ¶
A link for the provider to connect in an appointment with the patient.
Headers
Content-Type: application/json
Api-Key: YourApiKey
Headers
Content-Type: application/json
Body
{
"id": 1, // [int] appointment id
"providerVisitUrl": "https://linkofappoiontmentforprovider..." // [string]
}
Get Provider Appointment LinkGET/qapi/v1/appointments/{appointment_id}/provider-link
Get an Appointment link for provider
- appointment_id
string
(required) Example: 1The id of the Appointment.
Microsot Teams Video Call Link for Provider ¶
Microsot teams link for the provider to connect with the patient.
Headers
Content-Type: application/json
Api-Key: YourApiKey
Teams-Auth-Token: TeamsAuthToken
Headers
Content-Type: application/json
Body
{
"id": 1, // [int] appointment id
"msTeamsProviderVisitUrl": "https://teams.microsoft.com/v2/?meetingjoin=true..." // [string]
}
Get Microsot Teams Provider Video Call LinkGET/qapi/v1/appointments/{appointment_id}/msteams-provider-link
Get MS teams Video Call link for provider
- appointment_id
string
(required) Example: 1The id of the Appointment.
Appointment Links for the provider and for the patient ¶
Both links, one for the provider and one for the patient, to connect in an videocall.
Headers
Content-Type: application/json
Api-Key: YourApiKey
Headers
Content-Type: application/json
Body
{
"appointmentExternalId": "2e96ed0e-0f80-4dc3-b2c1-42e65b789e56", // [string] appointment external id
"providerVisitUrl": "https://linktoappointmentforprovider..." // [string]
"patientVisitUrl": "https://linktoappointmentforpatient..." // [string]
}
Get Provider and Patient Appointment LinkGET/qapi/v1/appointments/{external_appointment_id}/video-call-links
Get an Appointment link for provider and an Appointment link for the patient
- external_appointment_id
string
(required) Example: 2e96ed0e-0f80-4dc3-b2c1-42e65b789e56The external id of the Appointment.
Headers
Content-Type: application/json
Api-Key: YourApiKey
Headers
Content-Type: application/json
Body
{
"appointmentExternalId": "2e96ed0e-0f80-4dc3-b2c1-42e65b789e56", // [string] appointment external id
"providerVisitUrl": "https://linktoappointmentforprovider..." // [string]
"patientVisitUrl": "https://linktoappointmentforpatient..." // [string]
}
Get Provider and Patient Appointment Link with SAIDGET/qapi/v1/appointments/id/type/SAID/value/{solo_appointment_id}/video-call-links
Get an Appointment link for provider and an Appointment link for the patient.
Release version: 2022Q4.4
Available on CAT from November 25, 2022
Available on PROD from November 29, 2022
- solo_appointment_id
int
(required) Example: 1The Solo Appointment ID (SAID).
Single Appointment ¶
Headers
Content-Type: application/json
Api-Key: YourApiKey
Body
{
"date": 1499441179, // [timestamp] (optional) appointment date
"duration": 900, // [int] (optional) appointment duration
"status": "cancelled" // [string] (optional) only cancelled is allowed
"externalId": "2e96ed0e-0f80-4dc3-b2c1-42e65b789e56", // [string] (optional) appointment external id
"reasons": ["vomit"], // [list of strings] (optional) appointment reasons
"accountNumber": "ABC123456789" // [string] (optional) Encounter id
}
Headers
Content-Type: application/json
Body
{
"id": 1, // [int] appointment id
"visitUrl": "https://linktoonlinecheckin..." // [string]
}
Update AppointmentPUT/qapi/v1/appointments/{appointment_id}
Update an existing Appointment.
- appointment_id
string
(required) Example: 1The id of the Appointment.
Headers
Content-Type: application/json
Api-Key: YourApiKey
Headers
Content-Type: application/json
Body
{
"id": 1, // [int] appointment id
"date": 1508584382, // [int] timestamp
"duration": 900, // [int] duration in seconds
"reasons": ["headache"], // [array<string>]
"status": "in progress.intake.ready", // [string] one of ["scheduled", "arrived", "in progress.intake.ready", "in progress.intake.progress", "in progress.exam.ready", "in progress.exam.progress", "discharge.ready", "discharge.progress", "completed", "sign off", "cancelled", "not showed up"]
"videoCall": { // [object|null]
"id": "76dc0be9-65e9-4832-9acb-caa292fafcc7", // [string]
"status": "waiting" // [string] one of ["LWBS", "incomplete", "complete", "finalizing", "on hold", "on call", "waiting"]
}
"externalId": "2e96ed0e-0f80-4dc3-b2c1-42e65b789e56", // [string|null] appointment external id
"patient": {
"id": "1",
"demographics": {
"mrn": "MRN-123",
"accountNumber": "A-123",
"name": [
{
"use": "usual",
"family": "Mike Shinoda",
"firstName": "Mike",
"middleName": "",
"lastName": "Shinoda",
"alias": ""
}
],
"birthDate": "1983-08-15",
"gender": "male",
"maritalStatus": "married",
"telecom": [
{
"use": "home",
"system": "phone",
"value": "+1 (111) 111-1111"
},
{
"use": "home",
"system": "email",
"value": "mike_zzzzzzz@company.com"
}
],
"contact": [
{
"telecom": [
{
"use": "home",
"system": "phone",
"value": "phone"
},
{
"use": "home",
"system": "email",
"value": "someemail@email.email"
}
],
"name": []
}
],
"preferredLanguage": "English",
"race": "White",
"ethnicity": "not Hispanic or Latino",
"address": [
{
"city": "New York",
"use": "home",
"apartment": "",
"country": "USA",
"state": "NY",
"postalcode": "10019",
"line": [
"123 Main St",
""
]
}
],
"active": true,
"deceased": true,
"deceasedAt": "2020-03-31 10:12 AM",
"familyMember": false, // deprecated
"isLinkedByEmail": false,
"sharedEmailGroup": { // [object|null] (only needed if isLinkedByEmail is true)
"type": "family",
"name": "Family Name"
}
}
},
"providers": [
{
"id": "1234",
"email": "clara@whovians.com",
"firstName": "Clara",
"middleName": "Oswin",
"lastName": "Oswald"
}
]
}
Get AppointmentGET/qapi/v1/appointments/{appointment_id}
Get an Appointment.
- appointment_id
string
(required) Example: 1The id of the Appointment.
Waiting Rooms ¶
Practice waiting rooms.
Waiting Rooms ¶
Practice waiting rooms.
Headers
Content-Type: application/json
Api-Key: YourApiKey
Headers
Content-Type: application/json
Body
[
{
"id": "7669483a-6b12-497d-acb9-ddbf558d2b2a",
"name": "Default Waiting Room Name 1",
"serviceLine": "Demo",
"serviceType": "Demo"
},
{
"id": "abf8130c-24a7-4df0-b978-ca18c538dc71",
"name": "Default Waiting Room Name 2",
"serviceLine": "Demo",
"serviceType": "Other"
}
]
Get Waiting Room ListGET/qapi/v1/waiting-rooms
Get list of the waiting rooms of a practice.
Appointment Note ¶
Appointment note or visit note.
Appointment Note ¶
Appointment note(visit note).
Headers
Content-Type: application/json
Api-Key: YourApiKey
Headers
Content-Type: application/json
Body
[
{
"id": "be9180f7-b0c0-42a5-9b14-c8b67a3b4c0f", // [string] id of visit note template
"template": {
"name": "template2", // name of template
"flow": { // flow of template
"sections": []
}
},
"comments": [
{
"id": "358d336c-20c4-44ab-9292-596fb0f0199c", // [string]
"templateId": "be9180f7-b0c0-42a5-9b14-c8b67a3b4c0f", // [string]
"message": "comment message", // [string]
"postedAt": 1508584382, // [int] timestamp
"author": {
"id": 123, // [int]
"username": "user@user.com" // [string]
}
}
],
"responses": [
{
"dateTime": {
"date": "2017-10-21 16:45:53.000000",
"timezone_type": 3,
"timezone": "America/New_York"
},
"question": ["some section", "some question"],
"response": ["answer1", "answer2"]
}
]
}
]
Get Visit NoteGET/qapi/v1/appointments/{appointment_id}/visit-note
Get Visit Note.
- appointment_id
string
(required) Example: 1The id of the Appointment.
Headers
Content-Type: application/json
Api-Key: YourApiKey
Headers
Content-Type: application/json
Body
{
"name": "Acute Neurology - Physician Services",
"questions": [
{
"id": "923c5621-66a1-49a3-aa7b-a7753cbfd139",
"value": [
"Male"
]
}
]
}
Update Visit NotePUT/qapi/v1/appointments/{appointment_id}/visit-note
Update Visit Note Questions.
- appointment_id
string
(required) Example: 1The id of the Appointment.
Appointment Slots ¶
This section groups appointment slots resources.
Appointment Slots Collection ¶
A Collection of appointment slots.
Headers
Content-Type: application/json
Api-Key: YourApiKey
Headers
Content-Type: application/json
Body
[
{
"date": 1505053800,
"duration": 900
},
{
"date": 1505054700,
"duration": 900
},
{
"date": 1505055600,
"duration": 900
},
{
"date": 1505056500,
"duration": 900
}
]
Get SlotsGET/qapi/v1/appointment-slots{?after,before,waitingRoom,duration}
Find Appointment Slots for a specific date range.
Slots duration is taken from waiting room settings.
All fields are required.
- after
timestamp
(required) Example: 1505053200Left date range for the search.
- before
timestamp
(required) Example: 1505057400Right date range for the search.
- waitingRoom
string
(required) Example: GreatRoomWaiting room name.
- duration
int
(optional) Example: 900should be in range [1, 86400], by default waiting room slot duration is used.
Appointment Attachments ¶
This section groups appointment attachments
Appointment Attachments Collection ¶
A collection of appointment attachments
Headers
Content-Type: application/pdf
Api-Key: YourApiKey
Body
(binary file)
Headers
Content-Type: application/json
Body
{
"id": "583fea87-58f8-4fd6-968a-bf61b3c5a958",
"appointmentId": "f9856715-f48a-4c31-97ad-fa47e586cbee",
"title": "UploadedPDF.pdf",
"mimeType": "application/pdf",
"size": 9508,
"uploadedAt": "2022-07-22T09:43:53-04:00",
"deleted": false
}
Headers
Content-Type: application/json
Body
{
"error": {
"message": "Mime type \"text/plain\" not supported. Available file mime-types: \"application/pdf\", \"application/x-pdf\", \"image/pdf\", \"image/png\", \"image/jpeg\""
}
}
Upload attachment to appointmentPOST/qapi/v1/appointments/{appointmentId}/attachments{?fileName}
Upload a new Appointment attachment.
Max file size: 5Mb
Allow file mime-types: application/pdf
, application/x-pdf
, image/pdf
, image/png
, image/jpeg
- appointmentId
string
(required) Example: 1The id (or aggregate id) of the Appointment.
- fileName
string
(optional) Example: myFileName.pdfUploaded file name. This filename will be displayed in UI.
Headers
Content-Type: application/json
Api-Key: YourApiKey
Headers
Content-Type: application/json
Body
{
"attachments": [
{
"id": "083ff406-6fa8-4ae5-afd2-ee57ff6a6632",
"appointmentId": "f9856715-f48a-4c31-97ad-fa47e586cbee",
"title": "Attachment.png",
"mimeType": "image/png",
"size": 85253,
"uploadedAt": "2022-07-19T11:35:46+00:00",
"deleted": false
},
{
"id": "8411f863-0895-4300-af13-66b0dafce51d",
"appointmentId": "f9856715-f48a-4c31-97ad-fa47e586cbee",
"title": "MyFileNamTest1.pdf",
"mimeType": "image/pdf",
"size": 5744,
"uploadedAt": "2022-07-19T16:39:07+00:00",
"deleted": false
}
]
}
Get Appointment AttachmentsGET/qapi/v1/appointments/{appointmentId}/attachments
Get collection of appointment attachments
- appointmentId
string
(required) Example: 1The id (or aggregate id) of the Appointment.
Delete appointment attachment ¶
Headers
Content-Type: application/json
Api-Key: YourApiKey
Headers
Content-Type: application/json
Delete appointment attachmentDELETE/qapi/v1/appointments/{appointmentId}/attachments/{attachmentId}
- appointmentId
string
(required) Example: 1The id (or aggregate id) of the Appointment.
- attachmentId
string
(required) Example: 8411f863-0895-4300-af13-66b0dafce51dThe id of attachment
Patient Documents ¶
This section groups patient documents.
Patient Documents Collection ¶
A Collection of patient documents.
Headers
Content-Type: application/json
Api-Key: YourApiKey
Body
{
"name": "document name", // [string]
"dateTime": 1510367140, // [unix timestamp]
"responses": [
{
"question": "question 1", // [string]
"response": "response to question 1" // [string]
}
]
}
Headers
Content-Type: application/json
Body
[]
Add Patient DocumentPOST/qapi/v1/patients/{patient_id}/documents
Adds new patient document.
All fields are required.
- patient_id
string
(required) Example: 1The id of the Patient.
Episodes Of Care ¶
This section groups episodes resources.
Episodes ¶
Headers
Content-Type: application/json
Api-Key: YourApiKey
Body
{
"name": "covid care", // [string] (required) episode name
"type": "covid", // [string] (required) predefined string, episode type
"from": "YYYY-MM-DD", // [string] (required) start date for episode
"to": "YYYY-MM-DD", // [string] (optional) end date for episode
"status": "string" // [string] (required) [PLANNING, WAITLIST, ACTIVE, ONHOLD, FINISHED, CANCELED]
"objective": "care covid patient" // [string] (optional)
"reasonIncomplete": "unknown" // [string] (optional) reason if the episode status is incomplete
}
Body
{
"episodeId": "bd43a830-6c0b-4120-b5b8-78a117f8ee02", // [string] episode id
}
Create EpisodePOST/qapi/v1/patients/{patient_id}/episodes
- patient_id
string
(required) Example: 1The id of the Patient.
Headers
Content-Type: application/json
Api-Key: YourApiKey
Headers
Content-Type: application/json
Body
{
"episodes" : [
{
"id": "bd43a830-6c0b-4120-b5b8-78a117f8ee02", // [string] episode id
"patientId": "05ade251-689e-484c-82f9-b2f1f0cd7dbb", // [string] patient id
"name": "test covid", // [string] episode name
"from": "2023-03-29", // [string] YYYY-MM-DD date episode starts
"to": "2023-03-29", // [string] YYYY-MM-DD date when episode ends
"type": "neddie", // [string] predefined episode type
"status": "planning", // [string] episode status
"objective": "recover from covid", // [string] goal of the episode
"reasonIncomplete": "unknown" // [string] reason if the status is incomplete
},
{
"id": "bd43a830-6c0b-4120-b5b8-78a117f8ee03", // [string] episode id
"patientId": "05ade251-689e-484c-82f9-b2f1f0cd7dbc", // [string] patient id
"name": "test covid", // [string] episode name
"from": "2023-03-29", // [string] YYYY-MM-DD date episode starts
"to": "2023-03-29", // [string] YYYY-MM-DD date when episode ends
"type": "neddie", // [string] predefined episode type
"status": "planning", // [string] episode status
"objective": "recover from covid", // [string] goal of the episode
"reasonIncomplete": "unknown" // [string] reason if the status is incomplete
}
]
}
Get list of Episodes for patientGET/qapi/v1/patients/{patient_id}/episodes
- patient_id
string
(required) Example: 1The id of the Patient.
Single Episode ¶
Headers
Content-Type: application/json
Api-Key: YourApiKey
Headers
Content-Type: application/json
Body
{
"id": "bd43a830-6c0b-4120-b5b8-78a117f8ee02", // [string] episode id
"name": "test covid", // [string] episode name
"from": "2023-03-29", // [string] YYYY-MM-DD date episode starts
"to": "2023-03-29", // [string] YYYY-MM-DD date when episode ends
"type": "neddie", // [string] predefined episode type
"status": "planning", // [string] episode status
"objective": "recover from covid", // [string] goal of the episode
"reasonIncomplete": "unknown", // [string] reason if the status is incomplete
"soloPatientId": 854896, // [int] solo patient id
"externalPatientId": "05ade251" // [string] patient id
}
Get EpisodeGET/qapi/v1/episodes/{episode_id}
- episode_id
string
(required) Example: bd43a830-6c0b-4120-b5b8-78a117f8ee02The id of the Episode.
Headers
Content-Type: application/json
Api-Key: YourApiKey
Body
{
"name": "covid care", // [string] (required) episode name
"type": "covid", // [string] (required) predefined string, episode type
"from": "YYYY-MM-DD", // [string] (required) start date for episode
"to": "YYYY-MM-DD", // [string] (optional) end date for episode
"status": "string" // [string] (required) [PLANNING, WAITLIST, ACTIVE, ONHOLD, FINISHED, CANCELED]
"objective": "care covid patient" // [string] (optional)
"reasonIncomplete": "unknown" // [string] (optional) reason if the episode status is incomplete
}
Update EpisodePUT/qapi/v1/episodes/{episode_id}
- episode_id
string
(required) Example: bd43a830-6c0b-4120-b5b8-78a117f8ee02The id of the Episode.
Get list of Appointments for an Episode ¶
Headers
Content-Type: application/json
Api-Key: YourApiKey
Headers
Content-Type: application/json
Body
{
"episode":
{
"id": "bd43a830-6c0b-4120-b5b8-78a117f8ee02", // [string] episode id
"name": "test covid", // [string] episode name
"from": "2023-03-29", // [string] date episode starts
"to": "2023-03-29", // [string] date when episode ends
"type": "neddie", // [string] predefined episode type
"status": "planning", // [string] episode status
"objective": "recover from covid", // [string] goal of the episode
"reasonIncomplete": "unknown", // [string ]reason if the status is incomplete
"soloPatientId": 854896, // [int] solo patient id
"externalPatientId": "05ade251" // [string] patient id
},
"appointments":
[
{
"appointmentId": 3110360, // [int] appointment id
"date": 1679667900, // [timestamp] appointment date
"reasons": [], // [String Array] reasons
"hasNotes": false, // [Boolean]
"episodeOfCareId": "a2c6e3fc-c2f7-4a24-a0d6-eb2343a15469" // [string]
}
]
}
Get list of Appointments for an EpisodeGET/qapi/v1/episodes/{episode_id}/appointments"
- episode_id
string
(required) Example: xd43a830-6c0b-4120-b5b8-78a117f8ee02The id of the Episode.
Reassign Episode to Appointment ¶
Headers
Content-Type: application/json
Api-Key: YourApiKey
Body
{
"episodeId": "a2c6e3fc-c2f7-4a24-a0d6-eb2343a15469" // [string] (optional)
}
Reassign Episode to AppointmentPUT/qapi/v1/appointments/{appointment_id}/episode/assign
- appointment_id
string
(required) Example: 1The id of the Appointment.
Reports ¶
This section groups reports
Data Download ¶
Headers
Content-Type: application/json
Api-Key: YourApiKey
Headers
Content-Type: application/octet-stream
Body
A binary file in CSV format, representing the report data.
Get CSV reportGET/qapi/v1/reports/csv-data-dump{?from,to}
Download CSV report for a specific date range.
All parameters are required.
- from
date
(required) Example: 2020-02-10Left date range for the report.
- to
date
(required) Example: 2020-02-11Right date range for the report.
Generate report for visits ¶
Headers
Content-Type: application/json
Api-Key: YourApiKey
Body
{
"from": "2024-08-15T15:52:01+00:00", // [DateTime] (ATOM format - "Y-m-d\\TH:i:sP")
"to": "2024-08-15T15:52:01+00:00", // [DateTime] (ATOM format - "Y-m-d\\TH:i:sP")
"presetId": "a2c6e3fc-c2f7-4a24-a0d6-eb2343a15469", // [string]
"password": "IK5adv2N5V-gr£9v6" // [string]
}
Body
{
"id": "bd43a830-6c0b-4120-b5b8-78a117f8ee02",
"status": "pending"
}
Set encounter-report generation in createPOST/qapi/v1/encounter-report/create
Order zipped CSV encounter-report for a specific date range and preset(with a password).
presetId - we can get this presetId after configuring the report details in Solo Web Application
password - this will lock the generated csv file you need to use this password again to unlock csv file
Check status of report for visits ¶
Headers
Content-Type: application/json
Api-Key: YourApiKey
Body
{
"id": "bd43a830-6c0b-4120-b5b8-78a117f8ee02",
"status": "completed"
}
Check report statusGET/qapi/v1/encounter-report/status/{reportId}
Get status(pending, completed, failed) of report
All parameters are required.
- reportId
string
(required) Example: bd43a830-6c0b-4120-b5b8-78a117f8ee02
Encounter report Download ¶
Headers
Content-Type: application/json
Api-Key: YourApiKey
Headers
Content-Type: application/octet-stream
Body
A binary zipped file in CSV format
Get CSV reportGET/qapi/v1/encounter-report/download/{reportId}
Download CSV report for a specific date range.
All parameters are required.
- reportId
string
(required) Example: bd43a830-6c0b-4120-b5b8-78a117f8ee02
Integrations ¶
This section groups integration endpoints
Perfect answer API ¶
Headers
Content-Type: application/json
Api-Key: YourApiKey
Body
{
"firstName": "John",
"lastName": "Doe",
"dob": "2001-01-20", // (string) - Date of birth in ISO 8601 format
"locationId": "123", // (string) - ID of geolocation in FMS
"mrn": "AA-00000001",
"physicianCallbackNumber": "+1-202-555-0150", // (optional)
"requestingProvider": "Bob Dylan",
"callCenterNotified": "2019-12-03T14:32:12Z", // (string, optional) - Date and time in ISO format. Will be used to prefil form question.
"physicianNotified": "2019-12-03T14:32:12Z", // (string, optional) - Date and time in ISO format. Will be used to prefil form question.
"patientLocation": "Patient location", // (optional)
"consultType": "new", // (enum) [ new, update ]
"reason": "EEG Stat", // (enum) [ Stroke, EEG Stat, EEG Routine ]
"caller": "Caller name" // (optional)
}
Headers
Content-Type: application/json
Body
{
"patientId": "uuid",
"encounterId": "uuid"
}
Bad Request
Headers
Content-Type: application/json
Body
{
"error": {
"message": "Bad parameters [locationId: This is not a valid UUID.]"
}
}
Rejected request
Headers
Content-Type: application/json
Body
{
"error": {
"message": "A visit has already been created for the patient within 24 hours"
}
}
Perfect answer APIPOST/qapi/v1/perfect-answer
Flow:
- Create or update patient demographic
- Create appointment
- Add template PCM for created appointment
- Add answers from request to PCM-template
Preconditions:
- Waiting room configuration:
- Add templates to waiting room
Acute Neurology - Physician Services
andEEG - Physician Services
See in github - General Settings -> EHR Mapping -> Set location
- Add templates to waiting room
- For Location must be set “Geolocation Id”
- PCM template: must be tagged answers for set request values
Context Aware Linking ¶
Context linking is done via passing all needed data as encrypted JSON string, passed via query parameter.
JSON Schema
Data is passed as JSON string. Please check Json Schema as documentation for it’s format:
{
"properties": {
"user": {"type": "string"},
"type": {"enum": ["patient","medicalAssistant","provider"]},
"visit": {"type": "string"},
"date": {
"description": "Date and time of the visit as utc unix timestamp",
"type": "number"
},
"patient": {
"type": "object",
"properties": {
"id": {"type": "string"},
"sex": {"enum": ["male", "female", "other", "unknown"]},
"dob": {
"description": "Date of birth",
"type": "string",
"format": "date"
},
"firstName": {"type": "string"},
"lastName": {"type": "string"},
},
"required": ["id", "sex", "dob", "firstName", "lastName"]
}
},
"required": ["user", "type", "visit", "date", "patient"]
}
Encryption
To securely pass data, it must be encrypted using AES-256-CBC and sha256 hash from salted secret as a key. This encrypted JSON data will be passed as query parameter, so it also must be URL encoded:
URL Encode(Base64(Salt) + Base64(IV) + Base64(Encrypted JSON))
As an example, let’s generate key:
# Data: {"visit":"12345","user":"1234"}
# Secret: some secret
%
% openssl enc -aes-256-cbc -k "some secret" -P -md sha256
salt=7ADD846A66F25916
key=3D98C78B0F2C8D27A6B0294A7F04B8484C2890D09B1AF98D4E6E7044DA1EF6DF
iv =BDE13F6361593CC1D7181B40E5E0602B
For initialization vector (IV) we will use some randomly generated sequence of 16 bytes, and 8 bytes for salt. It is recommended to use random salt and IV for each request.
Key should be derived as sha256 hash of concatenation from secret and salt. After we done with preparations, we could encrypt JSON string:
BizXKL9L4EQ=YuhTK5qXNtOCmbuaHMq5tA==DUPdvDCZPiSUf0Jumt/Mr/wVWv+mr6Vzj5LnKUQtTPc=
^ ^ ^
Salt IV encrypted JSON in base64 encoding
First 12 bytes is salt, next 24 bytes is IV and the rest is our encrypted data.
Connect ¶
Headers
Location: https://demo.visitnow.org/videocalls/{id}
ConnectGET/integrations/linking{?arg}
Redirects to visit in our system
- arg
string
(required)Encrypted JSON string which contains required data
Webhooks ¶
This section groups webhooks.
Release version: 2022Q4.5
Available on CAT from December 9, 2022
Available on PROD from December 13, 2022
Payload Schemas
For events related to patients.
{
"event": {"type": "string"},
"data": {
"patientId": {"type": "int"}
}
}
For events related to appointments.
{
"event": {"type": "string"},
"data": {
"appointmentId": {"type": "int"}
}
}
Endpoints ¶
A collection of webhooks endpoints
Headers
Content-Type: application/json
Api-Key: YourApiKey
Body
{
"endpoint": "https://webhook.site/...", // [string]
"events": [
"appointment:scheduled",
"appointment:rescheduled",
...
]
}
Headers
Content-Type: application/json
Body
{
"id": "b20be9ce-eb93-48be-ad56-271ec4b2973c",
"endpoint": "https://webhook.site/...",
"events": [
"appointment:scheduled",
"appointment:rescheduled",
...
],
"encryptionKey": "39VNjjSpgoUWMbUhVCjAoQ=="
}
Add WebhookPOST/qapi/v1/webhooks
Adds new webhook.
- Attributes:
- endpoint:
https://webhook.site/...
(string) Specify the URL or web address where the data will be sent once the webhook is triggered. The URL will receive an HTTP POST request when the selected event happens. - events: (enum) Select events to trigger webhook sending
patient:created
patient:updated
patient:deactivated
appointment:scheduled
appointment:rescheduled
appointment:cancelled
appointment:completed
appointment:incompleted
appointment:no-show
appointment:lwbs
episode:created
episode:updated
- endpoint:
Response contains encryptionKey
which needs to be stored on your side in order to decrypt the payload data from the requests that our API will send to the specified endpoint.
Payload data will be encrypted with sha256
algorythm which could be decrypted with encryptionKey
as follow:
[
$salt,
$iv,
$encryptedString
] = [
base64_decode(substr($encryptedString, 0, 12)),
base64_decode(substr($encryptedString, 12, 24)),
base64_decode(substr($encryptedString, 36)),
];
$secret = hash('SHA256', $decryptionKey . $salt, true);
$decrypted = openssl_decrypt(
$encryptedString,
'AES-256-CBC',
$secret,
1,
$iv
);
Headers
Content-Type: application/json
Api-Key: YourApiKey
Body
{
"endpoint": "https://webhook.site/updated/...", // [string]
"events": [
"appointment:scheduled",
...
]
}
Headers
Content-Type: application/json
Body
{
"id": "b20be9ce-eb93-48be-ad56-271ec4b2973c",
"endpoint": "https://webhook.site/updated/...",
"events": [
"appointment:scheduled",
...
]
}
Update WebhookPUT/qapi/v1/webhooks/{webhookId}
Updates webhook that exists.
- Attributes:
- endpoint:
https://webhook.site/...
(string) Specify the URL or web address where the data will be sent once the webhook is triggered. The URL will receive an HTTP POST request when the selected event happens. - events: (enum) Select events to trigger webhook sending
patient:created
patient:updated
patient:deactivated
appointment:scheduled
appointment:rescheduled
appointment:cancelled
appointment:completed
appointment:incompleted
appointment:no-show
appointment:lwbs
episode:created
episode:updated
- endpoint:
- webhookId
string
(required) Example: b20be9ce-eb93-48be-ad56-271ec4b2973cThe id of webhook
Headers
Content-Type: application/json
Api-Key: YourApiKey
Headers
Content-Type: application/json
Body
[
{
"id": "b20be9ce-eb93-48be-ad56-271ec4b2973c",
"endpoint": "https://webhook.site/updated/...",
"events": [
"appointment:scheduled",
...
]
},
{
"id": "a52da597-f7ea-40a2-812e-2f118bda2434",
"endpoint": "https://webhook.site/...",
"events": [
"appointment:scheduled",
"appointment:rescheduled",
...
]
},
...
]
Webhooks CollectionGET/qapi/v1/webhooks
Returns list of created webhooks.
Headers
Content-Type: application/json
Api-Key: YourApiKey
Headers
Content-Type: application/json
Delete WebhookDELETE/qapi/v1/webhooks/{webhookId}
Deactivates webhook.
- webhookId
string
(required) Example: b20be9ce-eb93-48be-ad56-271ec4b2973cThe id of webhook
Headers
Content-Type: application/json
Api-Key: YourApiKey
Headers
Content-Type: application/json
Body
{
"id": "b20be9ce-eb93-48be-ad56-271ec4b2973c",
"endpoint": "https://webhook.site/updated/...",
"events": [
"appointment:scheduled",
...
],
"encryptionKey": "39VNjjSpgoUWMbUhVCjAoQ=="
}
Get WebhookGET/qapi/v1/webhooks/{webhookId}
Get single webhook.
- webhookId
string
(required) Example: b20be9ce-eb93-48be-ad56-271ec4b2973cThe id of webhook
Virtual Nursing and Sitting ¶
This section groups assistance requests.
Group Assistance Requests ¶
Headers
Content-Type: application/json
Api-Key: YourApiKey
Body
```js
{
"building": "hospital", // [string] (required) building name
"floor": "floor 2", // [string] (required) floor number
"room": "431", // [string] (required) room number
"bed": "bed 2" // [string] (optional) bed number
}
```
Body
```js
{
"id": "f87479f4-b7a1-4c3b-9dd3-69656bb7b925", // [string] ID of created request
"device": "123457", // [string] serial number of FMS device
"careLocation": {
"availability": "offline",
"id": "296f135e-88dd-4534-8e12-1f6f7b792fe5",
"name": "ICC-CL-01-02",
"status": "active",
"video": {
"type": "robot",
"clientId": null,
"serialNumber": "123457",
"careLocationId": "1409",
"skipActivation": true
}
},
"practice": "91ce2309-4049-49a4-8bf5-793bbe1579ed", // [string] IWA practice ID
"patient": {
"age": 0,
"id": "99ac90da-58fd-4af8-a378-e37f10ef6be5", // [string] ID of patient in IWA
"firstName": "Yura",
"lastName": "Lukashik",
"middleName": "A",
"dob": "2024-03-28",
"mrn": "1234"
},
"assignedTo": null,
"room": "Room 50",
"status": "incomplete", // [string] created request status
"createdAt": "2024-03-28T12:02:05+00:00",
"finishedAt": null,
"location": {
"id": "ab25dda0-64e6-4666-8bfe-3277656a6405",
"name": "ICC First Location"
},
"avSessions": [],
"createdFromExternalApi": true
}
```
Body
```js
{
"message": "Service Request Error: Missing Required Parameters. Please include either Device ID, Patient ID, or a combination of Building, Floor, Room, and Bed (opt.), or Department, Room, and Bed (opt.) to proceed" // [string] Error message
}
```
Body
```js
{
"message": "Device could not be found from the data submitted" // [string] Error message
}
```
Headers
Content-Type: application/json
Api-Key: YourApiKey
Body
```js
{
"department": "emergency department", // [string] (required) department name
"room": "431", // [string] (required) room number
"bed": "bed 2" // [string] (optional) bed number
}
```
Body
```js
{
"id": "f87479f4-b7a1-4c3b-9dd3-69656bb7b925", // [string] ID of created request
"device": "123457", // [string] serial number of FMS device
"careLocation": {
"availability": "offline",
"id": "296f135e-88dd-4534-8e12-1f6f7b792fe5",
"name": "ICC-CL-01-02",
"status": "active",
"video": {
"type": "robot",
"clientId": null,
"serialNumber": "123457",
"careLocationId": "1409",
"skipActivation": true
}
},
"practice": "91ce2309-4049-49a4-8bf5-793bbe1579ed", // [string] IWA practice ID
"patient": {
"age": 0,
"id": "99ac90da-58fd-4af8-a378-e37f10ef6be5", // [string] ID of patient in IWA
"firstName": "Yura",
"lastName": "Lukashik",
"middleName": "A",
"dob": "2024-03-28",
"mrn": "1234"
},
"assignedTo": null,
"room": "Room 50",
"status": "incomplete", // [string] created request status
"createdAt": "2024-03-28T12:02:05+00:00",
"finishedAt": null,
"location": {
"id": "ab25dda0-64e6-4666-8bfe-3277656a6405",
"name": "ICC First Location"
},
"avSessions": [],
"createdFromExternalApi": true
}
```
Body
```js
{
"message": "Service Request Error: Missing Required Parameters. Please include either Device ID, Patient ID, or a combination of Building, Floor, Room, and Bed (opt.), or Department, Room, and Bed (opt.) to proceed" // [string] Error message
}
```
Body
```js
{
"message": "Device could not be found from the data submitted" // [string] Error message
}
```
Headers
Content-Type: application/json
Api-Key: YourApiKey
Body
```js
{
"patientMrn": "1234" // [string] (required) patient MRN
}
```
Body
```js
{
"id": "f87479f4-b7a1-4c3b-9dd3-69656bb7b925", // [string] ID of created request
"device": "123457", // [string] serial number of FMS device
"careLocation": {
"availability": "offline",
"id": "296f135e-88dd-4534-8e12-1f6f7b792fe5",
"name": "ICC-CL-01-02",
"status": "active",
"video": {
"type": "robot",
"clientId": null,
"serialNumber": "123457",
"careLocationId": "1409",
"skipActivation": true
}
},
"practice": "91ce2309-4049-49a4-8bf5-793bbe1579ed", // [string] IWA practice ID
"patient": {
"age": 0,
"id": "99ac90da-58fd-4af8-a378-e37f10ef6be5", // [string] ID of patient in IWA
"firstName": "Yura",
"lastName": "Lukashik",
"middleName": "A",
"dob": "2024-03-28",
"mrn": "1234"
},
"assignedTo": null,
"room": "Room 50",
"status": "incomplete", // [string] created request status
"createdAt": "2024-03-28T12:02:05+00:00",
"finishedAt": null,
"location": {
"id": "ab25dda0-64e6-4666-8bfe-3277656a6405",
"name": "ICC First Location"
},
"avSessions": [],
"createdFromExternalApi": true
}
```
Body
```js
{
"message": "Service Request Error: Missing Required Parameters. Please include either Device ID, Patient ID, or a combination of Building, Floor, Room, and Bed (opt.), or Department, Room, and Bed (opt.) to proceed" // [string] Error message
}
```
Body
```js
{
"message": "Device could not be found from the data submitted" // [string] Error message
}
```
Headers
Content-Type: application/json
Api-Key: YourApiKey
Body
```js
{
"deviceSerialNumber": "123457" // [string] (required) serial number of FMS device
}
```
Body
```js
{
"id": "f87479f4-b7a1-4c3b-9dd3-69656bb7b925", // [string] ID of created request
"device": "123457", // [string] serial number of FMS device
"careLocation": {
"availability": "offline",
"id": "296f135e-88dd-4534-8e12-1f6f7b792fe5",
"name": "ICC-CL-01-02",
"status": "active",
"video": {
"type": "robot",
"clientId": null,
"serialNumber": "123457",
"careLocationId": "1409",
"skipActivation": true
}
},
"practice": "91ce2309-4049-49a4-8bf5-793bbe1579ed", // [string] IWA practice ID
"patient": {
"age": 0,
"id": "99ac90da-58fd-4af8-a378-e37f10ef6be5", // [string] ID of patient in IWA
"firstName": "Yura",
"lastName": "Lukashik",
"middleName": "A",
"dob": "2024-03-28",
"mrn": "1234"
},
"assignedTo": null,
"room": "Room 50",
"status": "incomplete", // [string] created request status
"createdAt": "2024-03-28T12:02:05+00:00",
"finishedAt": null,
"location": {
"id": "ab25dda0-64e6-4666-8bfe-3277656a6405",
"name": "ICC First Location"
},
"avSessions": [],
"createdFromExternalApi": true
}
```
Body
```js
{
"message": "Service Request Error: Missing Required Parameters. Please include either Device ID, Patient ID, or a combination of Building, Floor, Room, and Bed (opt.), or Department, Room, and Bed (opt.) to proceed" // [string] Error message
}
```
Body
```js
{
"message": "Device could not be found from the data submitted" // [string] Error message
}
```
Create Assistance RequestPOST/qapi/v1/request-assistance
Headers
Content-Type: application/json
Api-Key: YourApiKey
Body
```js
{
"building": "hospital", // [string] (required) building name
"floor": "floor 2", // [string] (required) floor number
"room": "431", // [string] (required) room number
"bed": "bed 2" // [string] (optional) bed number
}
```
Body
```js
{
"id": "f87479f4-b7a1-4c3b-9dd3-69656bb7b925", // [string] ID of created request
"device": "123457", // [string] serial number of FMS device
"careLocation": {
"availability": "offline",
"id": "296f135e-88dd-4534-8e12-1f6f7b792fe5",
"name": "ICC-CL-01-02",
"status": "active",
"video": {
"type": "robot",
"clientId": null,
"serialNumber": "123457",
"careLocationId": "1409",
"skipActivation": true
}
},
"practice": "91ce2309-4049-49a4-8bf5-793bbe1579ed", // [string] IWA practice ID
"patient": {
"age": 0,
"id": "99ac90da-58fd-4af8-a378-e37f10ef6be5", // [string] ID of patient in IWA
"firstName": "Yura",
"lastName": "Lukashik",
"middleName": "A",
"dob": "2024-03-28",
"mrn": "1234"
},
"assignedTo": null,
"room": "Room 50",
"status": "incomplete", // [string] created request status
"createdAt": "2024-03-28T12:02:05+00:00",
"finishedAt": null,
"location": {
"id": "ab25dda0-64e6-4666-8bfe-3277656a6405",
"name": "ICC First Location"
},
"avSessions": [],
"createdFromExternalApi": true
}
```
Body
```js
{
"message": "Service Request Error: Request not found" // [string] Error message
}
```
Headers
Content-Type: application/json
Api-Key: YourApiKey
Body
```js
{
"department": "emergency department", // [string] (required) department name
"room": "431", // [string] (required) room number
"bed": "bed 2" // [string] (optional) bed number
}
```
Body
```js
{
"id": "f87479f4-b7a1-4c3b-9dd3-69656bb7b925", // [string] ID of created request
"device": "123457", // [string] serial number of FMS device
"careLocation": {
"availability": "offline",
"id": "296f135e-88dd-4534-8e12-1f6f7b792fe5",
"name": "ICC-CL-01-02",
"status": "active",
"video": {
"type": "robot",
"clientId": null,
"serialNumber": "123457",
"careLocationId": "1409",
"skipActivation": true
}
},
"practice": "91ce2309-4049-49a4-8bf5-793bbe1579ed", // [string] IWA practice ID
"patient": {
"age": 0,
"id": "99ac90da-58fd-4af8-a378-e37f10ef6be5", // [string] ID of patient in IWA
"firstName": "Yura",
"lastName": "Lukashik",
"middleName": "A",
"dob": "2024-03-28",
"mrn": "1234"
},
"assignedTo": null,
"room": "Room 50",
"status": "incomplete", // [string] created request status
"createdAt": "2024-03-28T12:02:05+00:00",
"finishedAt": null,
"location": {
"id": "ab25dda0-64e6-4666-8bfe-3277656a6405",
"name": "ICC First Location"
},
"avSessions": [],
"createdFromExternalApi": true
}
```
Body
```js
{
"message": "Service Request Error: Request not found" // [string] Error message
}
```
Headers
Content-Type: application/json
Api-Key: YourApiKey
Body
```js
{
"patientMrn": "1234" // [string] (required) patient MRN
}
```
Body
```js
{
"id": "f87479f4-b7a1-4c3b-9dd3-69656bb7b925", // [string] ID of created request
"device": "123457", // [string] serial number of FMS device
"careLocation": {
"availability": "offline",
"id": "296f135e-88dd-4534-8e12-1f6f7b792fe5",
"name": "ICC-CL-01-02",
"status": "active",
"video": {
"type": "robot",
"clientId": null,
"serialNumber": "123457",
"careLocationId": "1409",
"skipActivation": true
}
},
"practice": "91ce2309-4049-49a4-8bf5-793bbe1579ed", // [string] IWA practice ID
"patient": {
"age": 0,
"id": "99ac90da-58fd-4af8-a378-e37f10ef6be5", // [string] ID of patient in IWA
"firstName": "Yura",
"lastName": "Lukashik",
"middleName": "A",
"dob": "2024-03-28",
"mrn": "1234"
},
"assignedTo": null,
"room": "Room 50",
"status": "incomplete", // [string] created request status
"createdAt": "2024-03-28T12:02:05+00:00",
"finishedAt": null,
"location": {
"id": "ab25dda0-64e6-4666-8bfe-3277656a6405",
"name": "ICC First Location"
},
"avSessions": [],
"createdFromExternalApi": true
}
```
Body
```js
{
"message": "Service Request Error: Request not found" // [string] Error message
}
```
Headers
Content-Type: application/json
Api-Key: YourApiKey
Body
```js
{
"deviceSerialNumber": "123457" // [string] (required) serial number of FMS device
}
```
Body
```js
{
"id": "f87479f4-b7a1-4c3b-9dd3-69656bb7b925", // [string] ID of created request
"device": "123457", // [string] serial number of FMS device
"careLocation": {
"availability": "offline",
"id": "296f135e-88dd-4534-8e12-1f6f7b792fe5",
"name": "ICC-CL-01-02",
"status": "active",
"video": {
"type": "robot",
"clientId": null,
"serialNumber": "123457",
"careLocationId": "1409",
"skipActivation": true
}
},
"practice": "91ce2309-4049-49a4-8bf5-793bbe1579ed", // [string] IWA practice ID
"patient": {
"age": 0,
"id": "99ac90da-58fd-4af8-a378-e37f10ef6be5", // [string] ID of patient in IWA
"firstName": "Yura",
"lastName": "Lukashik",
"middleName": "A",
"dob": "2024-03-28",
"mrn": "1234"
},
"assignedTo": null,
"room": "Room 50",
"status": "incomplete", // [string] created request status
"createdAt": "2024-03-28T12:02:05+00:00",
"finishedAt": null,
"location": {
"id": "ab25dda0-64e6-4666-8bfe-3277656a6405",
"name": "ICC First Location"
},
"avSessions": [],
"createdFromExternalApi": true
}
```
Body
```js
{
"message": "Service Request Error: Request not found" // [string] Error message
}
```
Get Current Assistance RequestGET/qapi/v1/request-assistance
Headers
Content-Type: application/json
Api-Key: YourApiKey
Body
```js
{
"building": "hospital", // [string] (required) building name
"floor": "floor 2", // [string] (required) floor number
"room": "431", // [string] (required) room number
"bed": "bed 2" // [string] (optional) bed number
}
```
Body
```js
{
"message": "Service Request Error: Request not found", // [string] Error message
}
```
Headers
Content-Type: application/json
Api-Key: YourApiKey
Body
```js
{
"department": "emergency department", // [string] (required) department name
"room": "431", // [string] (required) room number
"bed": "bed 2" // [string] (optional) bed number
}
```
Body
```js
{
"message": "Service Request Error: Request not found", // [string] Error message
}
```
Headers
Content-Type: application/json
Api-Key: YourApiKey
Body
```js
{
"patientMrn": "1234" // [string] (required) patient MRN
}
```
Body
```js
{
"message": "Service Request Error: Request not found", // [string] Error message
}
```
Headers
Content-Type: application/json
Api-Key: YourApiKey
Body
```js
{
"deviceSerialNumber": "123457" // [string] (required) serial number of FMS device
}
```
Body
```js
{
"message": "Service Request Error: Request not found", // [string] Error message
}
```
Cancel Current Assistance RequestDELETE/qapi/v1/request-assistance
Generated by aglio on 14 Nov 2024