Visit API
Intakes
POST /intakes V3
Create intake data object
Custom parameters
Apart from the parameters below, any amount of custom JSON field-value pairs may be sent. They will all be saved into the Intake object. Later they may be displayed to the provider (please contact VSee to configure the rendering format).
Â
Parameters
Parameter | Type | Description |
---|---|---|
|
| (optional) The ID of the provider who is being visited |
|
| (optional) Reason for visit |
|
| (optional) Visit type: 1 - walkin; 2 - schedule |
|
| (optional) Patient’s code ID on behalf of whom the intake will be created |
|
| Room’s code |
|
| (optional) Multiple formats supported: |
|
| (optional) |
|
| (optional) e.g |
Sample Request
curl -k -X POST -d "provider=541&reason_for_visit=Test&reset=true&type=1" https://api.vseepreview.com/vc/next/api_v3/intakes.json
{
"data": {
"id": "56e8c536-566c-44b6-bbca-66f0ac1f0144"
}
}
Sample Request with Custom Params
curl -k -X POST -d "provider=541&reason_for_visit=Test&reset=true&type=1" https://api.vseepreview.com/vc/next/api_v3/intakes.json
{
"data": {
"id": "56e8c536-566c-44b6-bbca-66f0ac1f0144",
"custom_is_allergic": "Yes",
"custom_symptoms": "Rash, Red Eyes",
"custom_symptoms_duration": "2 weeks"
}
}
POST /intakes/:id V3
Update a selected intake data object
Parameters
Parameter | Type | Description |
---|---|---|
|
| (optional) The ID of the provider who is being visited |
|
| (optional) Reason for visit |
|
| (optional) Visit type: 1 - walkin; 2 - schedule |
|
| (optional) Patient’s code ID on behalf of whom the intake will be created |
|
| Room’s code |
|
| Multiple formats supported: |
|
|
|
|
|
|
|
| (optional) Required for payment related, the consultation objects can be found at |
Response
curl -X POST -H "X-ApiToken: 5a2eb231d652b49f4d7fc0fbb78328fb" -H "X-AccountCode: vclinic" -H "Content-Type: multipart/form-data; boundary=----WebKitFormBoundary7MA4YWxkTrZu0gW" -F "location=CA" -F "phone=7123456789" -F "reason_for_visit=Test intake functionalities 2" "https://api.vseepreview.com/vc/next/api_v3/intakes/57a0705e-1c4c-4f24-b51d-3c71ac1f0144"
{
"data": {
"id": "56e8c536-566c-44b6-bbca-66f0ac1f0144"
}
}
GET /intakes/:id V3
Retrieve a selected intake data object
Parameters
None
Response
Â
Walkin Visits
POST /visits/add_walkin V3
Create a walk-in visit
Parameters
Parameter | Type | Description |
---|---|---|
|
| (optional) The ID of the provider who is being visited if patient is starting an appointment. Shouldn’t pass this for walkins. |
|
| The ID of the intake. |
|
| The ID of a scheduled appointment. This one is used in the case when the patient visits a scheduled appointment. |
|
| (optional) The ID of a scheduled appointment. This one is used in the case when the patient visits a scheduled appointment. |
|
| (optional) Patient’s code ID on behalf of whom the intake will be created |
|
| Current room’s code in which the visit will be created |
Response
Asynchronous Visits
POST /visits/add_econsult V3
Create an asynchronous e-consult visit. The econsult will be created without scheduling, the providers will see it on their dashboards and will need to accept it.
Parameters
Parameter | Type | Description |
---|---|---|
|
| The ID of the intake |
|
| Room code (required) |
Response
Appointment API
GET /availability V3
Get provider's available slots
Parameters
Parameter | Type | Location | Description |
---|---|---|---|
|
|
| (optional) Room code. If not given, will try to fall back to Intake.room |
|
|
| Search for available slots from this start time |
|
|
| Search for available slots up to this end time |
|
|
| Search for available slots during certain seconds |
|
|
| (optional) Pick only this provider’s slots |
|
|
| Intake ID. Should be passed when patient is choosing a slot for an appointment. It will use intake’s location, specialty, etc. |
|
|
| Consultation ID. This will help to determine slot duration |
|
|
| (beta) Header value is required if the application want to retrieve availablity without user token |
|
|
| (beta) Header value is required if the application want to retrieve availablity without user token |
Notes: If application want to retrieve providers availability slots for a room without user token, the following are required X-ApiKey
, X-ApiSecret
, room_code
, start
, end
, consultation_id
. location
 will be required if you want to filter by state as well.
Notes: The time range parameters 'start', 'end' and 'duration' obey the following rules:
 | input |  |  | actual |  |  |
---|---|---|---|---|---|---|
 | start | end | duration | start | end | duration |
1 | not set | not set | not set | available | available+4d | 4d |
2 | set | not set | not set |
|
| 4d |
3 | set | set | not set | start | end | (ignored) |
4 | set | not set | set |
|
| duration |
5 | not set | set | not set | end-4d | end | 4d |
6 | not set | set | set | end-duration | end | duration |
7 | not set | not set | set | available | available+duration | duration |
8 | set | set | set | start | end | (ignored) |
(available: The start time of the 1st available slot)
Sample minimal request
Other sample requests
The above data response format will change soon to
Â
POST /visits V3
Create an appointment
Parameters
Parameter | Type | Description |
---|---|---|
|
| The ID of the visiting patient (optional - only use in paramedic workflow) |
|
| The timestamp of the beginning of the appointment (in UNIX timestamp format) |
|
| The timestamp of the ending of the appointment (in UNIX timestamp format) |
|
| Room code (required) |
|
| 2 - scheduling |
|
| The ID of the intake |
|
| (optional) The ID of the provider who is being visited |
Response
POST /visits/close V3
Close/Cancel a visit or an appointment
Parameters
Parameter | Type | Description |
---|---|---|
|
| The ID of the visit/appointment |
|
| Â |
"patient_end_call" - Patient click End Call button on VSee
"patient_exit_room" - Patient click Exit Waiting Room
"call_ended" - When call ended not by patient, could be due to network problem or provider ended the call
"patient_cancel_appointment" - Patient click cancel appointment button
"max_waiting_time_reached" - Patient side max waiting time reached
Response
POST /visits/delete V3
Force cancel a visit. You can use admin token to cancel any existing visits.
Parameters
Parameter | Type | Description |
---|---|---|
|
| The ID of the visit/appointment |
Response
GET /visits V3
Get the visits list of the patient. The frontend can check the data["start"] field. If the start field is greater than the current timestamp then the visit is a upcoming appointment, otherwise it’s a past session. Group appointments and one-to-one appointments are now differentiated by the field visit_group_id
 which only exists in group appointments data.
For one-to-one appointments, consultation information can be retrieved from intake.consultation; for group appointments, consultation information has to be got from visit_group.consultation.
The following sample response offers 2 example for one-to-one appointment and one for group appointment.
Fields that can be returned for fields with format:Â "html"
:Â <u>, <b>, <i>, <strong>, <ul>, <ol>, <li>, <p>, <br>
Parameters
Response
GET /visits/:id V3 and Sample Visit Object
Get detailed information for a certain appointment.
Group appointments and one-to-one appointments are now differentiated by the field "visitgroupid" which only exists in group appointments data.
For one-to-one appointments, consultation information can be retrieved from intake.consultation; for group appointments, consultation information has to be got from visit_group.consultation.
Parameters
None
Response
POST /visits/:id?version=2 V3
Update an appointment
Parameters
Parameter | Type | Description |
---|---|---|
|
| (optional) The timestamp of the beginning of the appointment (in UNIX timestamp format) |
|
| (optional) The timestamp of the ending of the appointment (in UNIX timestamp format) |
|
| (optional) The ID of the provider who is being visited |
Add provider into a TDB visit
Please supply new provider_id
Response
Remove provider from an appointment
Do the same as above but this time set provider_id
to 0
GET /visits/current V3
Get current visit in progress
Parameters
None
Response
Â
Visit export
GET /visits/:id/exports/visit_summary V3
Retrieve PDF visit summary
Â
Understanding Visit object ID
There is a unique Visit.id field for every Visit object.
However some visits may be related to each other, following these rules:
Field | Sample | Meaning |
---|---|---|
|
| Unique visit ID |
|
| When an appointment is started, a new visit object of type |
|
| When an appointment is started, a new visit object of type |
|
| Â |
|
| When a user is invited into an appointment call, the inviting appointment ID is stored here. |
|
  |  |