User API

User Object

Type

Value

Meaning

Description

Value

Meaning

Description

100

Admin

Admin user

110

Cronjob

For system use

140

System

For system use

150

Common Admin

Admin user

160

API

For system use

200

Member

A registered patient

300

Company

 

400

Provider

Provider: Physician or CSR

600

Guest

Guest one-time user

700

Phone Bridge

User joined by dial-in

500

Kiosk

deprecated

Subtype

Value

Meaning

Description

Value

Meaning

Description

480

Paramedic

Remote Medic

482

Doctor

Licensed Service Provider

484

Nurse

Remote Medic

486

SNF Nurse

deprecated

470

CSR

Customer Service Representative

460

Medical Assistant

Medical Assistant

 

GET /users V3

Filter Parameters

Parameter

Type

Description

Parameter

Type

Description

id

int|int[]|string

E.g:

123 or “1234,1235" or [1234, 1235]

full_name

String

Full text search (minimum 3 chars)

email

String

Like search (minimum 3 chars)

q

String

Search keyword (minimum 3 chars)

full_name like q or email like q

Should be used in conjunction with type

ex_filter

String

all or my-patient

all: filter by assigned rooms

my-patient: filter by own visits

is_hidden

Boolean

[RPM][New] Hide/Unhide patient from patient list

is_admin

Boolean

 

status

int|int[]|string

Status, e.g:

20 or “10,20" or [10, 20]

type

int|int[]|string

User type, e.g:

400 or “200,600" or [200, 600]

role

string|string[]

Role, e.g:

"clinic_admin" or "clinic_admin,scheduler" or ["clinic_admin", "scheduler"]

room_code

 

 

account_code

 

 

group

 

Clinic group

subtype

 

Provider sub type

Other Parameters

Parameter

Type

Description

Parameter

Type

Description

sort

string|object

E.g:

“full_name.asc" or {full_name: "asc"}

start

int

Offset

limit

int

Page size

fields

string|string[]

E.g:

"username,full_name,last_login" or ["username", "full_name"]

Available fields params

  • id

  • username

  • first_name, last_name, full_name

  • last_login

  • type, subtype

 

Response:

curl --location 'https://api-vclinic.vseepreview.com/vc/stable/api_v3/users?q=anton%2Bpatient1%40vseelab.com&type=200' \ --header 'X-ApiToken: vclinic_api_token' \ --header 'X-AccountCode: vclinic' { "data": [ { "email": "anton+patient1@vseelab.com", "id": "20008869839", "full_name": "Anton Patient1" }, ... ], "total_count": 500 }

 

GET /users/:id V3

Get profile’s data of a particular user, including fields from the extended profile (if any).

Response:

curl --location --request GET 'https://api-vclinic.vsee.me/api_v3/users/27769243' \ --header 'X-ApiToken: xxxxxxxxxxxxx' \ --header 'X-AccountCode: vclinic' { "data": { "id": "27769243", "code": "63f67706de344db98a6461d00adc646e", "first_name": "anton", "last_name": "test_2", "full_name": "anton test_2", "username": "anton+test2@vseelab.com", "vseeid": "cmo+user27769243", "dob": "1980-01-01", "email": "anton+test2@vseelab.com", "gender": 1, "active": true, "tos": true, "status": 20, "subtype": "", "timezone": "Europe/Berlin", "email_verified": true, "signup_step": 99, "extra": { "marital_status": "married", "gender_identity": "Choose Not To Disclose", "social_security_no": "", "veteran": "", "race": "", "ethnicity": "", "health_insurance": "", "insurance": "", "insurance_policy_number": "", "attachments": null, "emerg_contact_name": "" }, "dashboard_url_alternative": "/u/uat", "account_code": "vclinic", "clinics": [ "vclinic" ], "rooms": [ { "id": "865244556", "code": "vclinic_room_code", "slug": "uat", "name": "UAT", "account_code": "vclinic", "domain": "vclinic.vsee.me", "default": true, "added_time": 1677096710, "source": "signup" } ], "created": 1677096710, "type": 200 } }

POST /users/sso V3

Single Sign On for patient and provider.

This is disabled by default, you need to contact admin@vsee.com to request for it.

SSO process will create a user record on VSee side when you first call this API and will map to and return existing user record for further requests.

GET parameters

Use POST /users/sso?fields=vsee parameter to include the following object as part of the response. This may be used for Browser Call SDK workflow.

"vsee": { "id": "ccpreview+606ce3e353c8411a8e7b52c664457b1f", "token": "78fc497ff743d2b51050d9102acabe63" }

POST Parameters

Parameter

Type

Description

Parameter

Type

Description

first_name

String

Required

last_name

String

Required

dob

String

Optional

YYYY-MM-DD format

type

Integer

200: Member, 400: Provider, 600: Guest User

code

String

Required if type is 200 or 400 / Max length: 128 character
code is a unique user identifier on your end. VSee will store the code for this user record and next time you call SSO, we will return you the same existing user.

email

String

Optional

username

String

Optional - system will generate one as fallback

disable_emails

Integer

Optional - set to 1 - if you want user to disable all email notification

POST Parameters required in order to be able to e-prescribe for this user

Parameter

Type

Description

Parameter

Type

Description

first_name

String

Required

last_name

String

Required

dob

String

Required

YYYY-MM-DD format

type

Integer

200: Member

code

String

Required

Max length: 128 character
code is a unique user identifier on your end. VSee will store the code for this user record and next time you call SSO, we will return you the same existing user.

gender

String

Required

male / female

street_addr

String

Required

city

Integer

Required

state

String

Required

Two-Letter State Abbreviation

zip

String

Required

phone

String

Required

Response

Note: you can use the data.token.token return here to redirect user from your portal to VSee Clinic portal, please see Workflows section.

Guest SSO
Patient SSO
Provider SSO

GET /auth V3

Use this URL when you need to provide the user with a button or link to redirect to VSee Clinic. The URL will follow this pattern

https://vclinic.vseepreview.com/auth?sso_token={token}&next={next_url}

e.g

https://vclinic.vseepreview.com/vc/next/auth?sso_token=66bcd0acff324e8a44992d9596b5d361&next=/u/clinic

This will log user in, then redirect user to

https://vclinic.vseepreview.com/vc/next/u/clinic

Parameters

Parameter

Type

Description

Parameter

Type

Description

sso_token

String

SSO token from User API - SSO API response

next

String

URL path to redirect the user to after login

one_time_token

String

1 - invalidate the sso_token after login. This is optional for additional security.

disable_navigation

String

1 - disable all email communication

POST /users/login.json [public access] V3

Log user in and retrieve access token

Notes:

  1. user_type will be member(200), provider(400), …, etc

  2. There is 2 methods for log in

    1. active user

      1. use username and password field

    2. inactive user

      1. user email and email token sent to their email

      2. only after user update their password via API, their status will change to active and can log in via active user log in method above.

Parameters

Parameter

Type

Description

Parameter

Type

Description

username

String

(for active user only)

password

String

(for active user only)

email

String

(for non-active user who has not set the password yet)

email_token

String

(for non-active user who has not set the password yet)

Response

Note: you can use the token.token return here to redirect user from your portal to VSee Clinic portal, please see Section Web log in using SSO Token.

GET /me V3

Retrieve the current user profile

Parameters

Parameter

Type

Description

Parameter

Type

Description

user_photo_size

String

(optional) User photo dimensions in {W}x{H} format. Example: 320x240.

Response

POST /me V3

Update current user profile

Parameters

Parameter

Type

Description

Parameter

Type

Description

password

String

(optional) Should be sent alone if it’s first time setting password, or together with old_password to change it.

old_password

String

(optional) Should be sent when user is changing password

dob

Date

(optional) yyyy-mm-dd

gender

String

(optional) male / female

nationality

String

(optional) choose 1 from the list e.g Vietnamese

tos

Integer

0 - not accepting / 1 - accepted Terms of service

phone

String

(optional) phone number

first_name

String

(optional) First name

last_name

String

(optional) Last name

street_addr

String

(optional) Street addr

state

String

(optional) 2 letter state code (CA, AL)

zip

String

(optional) eg 07123

city

String

(optional) City

pcp_name

String

(optional) Primary Care Physician Name

pcp_phone

String

(optional) Primary Care Physician Phone (10 digit)

timezone

String

(optional) See timezone list below

photo

String

(optional) File id retrieved from POST /files API call to upload photo

To delete the uploaded avatar, pass empty string. lat, long??? gps | Object | json object, min lat, long

Timezone List

Response

POST /users/logout V3

Log the current user session out corresponding to the supplied tokens. The supplied tokens will be destroyed.

Parameters

Parameter

Type

Description

Parameter

Type

Description

tokens

Array

Array of tokens to be destroyed, e.g ['token1','token2'] or string 'token1,token2'

Response

POST /tokens/refresh V3

Use refresh token to generate a new access token. New refresh token is also returned for the next refresh.

Parameters

Parameter

Type

Description

Parameter

Type

Description

refresh_token

String

 

Response

POST /users/reset_password V3

System will send reset password email to the email supplied if valid

Parameters

Parameter

Type

Description

Parameter

Type

Description

email

String

Valid email to send reset password email

Response

POST /users/alive V3

When user is in critical workflow such as waiting for provider to call, it's required to send keep alive at certain interval recommended < 1/2 of the heartbeat value. Only "alive" patients will be able to show up on provider dashboard

Parameters

Parameter

Type

Description

Parameter

Type

Description

heartbeat

Integer

(optional) default value is 300s, you can set your own heartbeat value, the more intermittent your network connection, the higher the value you should set. Ideally for mobile, set to about 300s and update every 250s

Response

POST /users/activate V3

It will check user info against eligibility file if configured for the current account. User will receive email with activation code.

Parameters

Parameter

Type

Description

Parameter

Type

Description

first_name

String

 

last_name

String

 

email

String

e.g an@vseeclinic.com

dob

String

YYYY-MM-DD e.g 1988-10-02

ssn

String

4 digits e.g 1234, 1111

Response

Â