User API

get /users

List users

Base URL https://api.vseepreview.com/api_v3 · operationId getUsers

Authentication: Admin Token — Requires the Clinic Admin API Token from your dashboard (Developers → App → Edit App).

Retrieve a list of users with optional filtering and sorting.

Tip: Wherever there's a user :id field in API methods, it also accepts dash (-) as a mapping to the current user.

Parameters

NameInTypeRequiredEnumDefaultDescription
X-ApiTokenheaderstringyesAPI token (e.g. your_api_token)
X-AccountCodeheaderstringyesAccount code (e.g. vclinic)
idquerystringnoFilter by user ID(s). Accepts single ID, comma-separated string, or array. E.g: `123` or `"1234,1235"` or `[1234, 1235]` (e.g. 123)
full_namequerystringnoFull text search by name (minimum 3 characters)
emailquerystringnoLike search by email (minimum 3 characters)
qquerystringnoSearch keyword (minimum 3 chars). Searches `full_name` and `email`. Should be used in conjunction with `type`. (e.g. anton+patient1@vseelab.com)
typequerystringnoUser type. E.g: `400` or `"200,600"`. Types: 100=Admin, 200=Member, 400=Provider, 600=Guest (e.g. 200)
statusquerystringnoUser status. Accepts single value, comma-separated, or array. E.g: `20` or `"10,20"`
rolequerystringnoFilter by role. E.g: `"clinic_admin"` or `"clinic_admin,scheduler"`
ex_filterquerystringnoall, my-patientExtended filter: `all` (filter by assigned rooms) or `my-patient` (filter by own visits)
is_hiddenquerybooleannoHide/Unhide patient from patient list (RPM feature)
is_adminquerybooleannoFilter admin users
room_codequerystringnoFilter by room code
account_codequerystringno
groupquerystringnoFilter by clinic group
subtypequerystringnoProvider sub type. Values: 480=Paramedic, 482=Doctor, 484=Nurse, 470=CSR, 460=Medical Assistant
sortquerystringnoSort order. E.g: `"full_name.asc"` or `{full_name: "asc"}` (e.g. full_name.asc)
startqueryintegerno0Offset for pagination
limitqueryintegerno20Page size for pagination
fieldsquerystringnoComma-separated fields to return. Available: `id`, `username`, `first_name`, `last_name`, `full_name`, `last_login`, `type`, `subtype` (e.g. username,full_name,last_login)

Responses

200 — Successful response

List members (type=200) — List all members (patients)

{
  "data": [
    {
      "email": "anton+patient1@vseelab.com",
      "id": "20008869839",
      "full_name": "Anton Patient1"
    },
    {
      "email": "anton+patient2@vseelab.com",
      "id": "20008869840",
      "full_name": "Anton Patient2"
    }
  ],
  "total_count": 500
}

List providers (type=400) — List all providers

{
  "data": [
    {
      "email": "doctor+1@vseelab.com",
      "id": "20008870001",
      "full_name": "Dr. Jane Smith"
    },
    {
      "email": "doctor+2@vseelab.com",
      "id": "20008870002",
      "full_name": "Dr. John Doe"
    }
  ],
  "total_count": 25
}

Search by email — Filter users by email with type

{
  "data": [
    {
      "email": "anton+patient1@vseelab.com",
      "id": "20008869839",
      "full_name": "Anton Patient1"
    }
  ],
  "total_count": 1
}

400 — Bad Request

{
  "code": 404,
  "message": "Sorry, this page is not available."
}

401 — Unauthorized

{
  "code": 404,
  "message": "Sorry, this page is not available."
}

Machine-readable: OpenAPI JSON (operationId: getUsers)