Skip to content
This repository was archived by the owner on Dec 20, 2024. It is now read-only.

V3 API GetFilteredApptList

Karen White edited this page May 15, 2019 · 1 revision

Get Filtered Appointment List

GET v3/admin/appointments

GET v3/patients/appointments

Returns a list of all appointments satisfying a filter.

Both URLs are equivalent, except v3/admin/appointments is intended for use by hospital staff, while v3/patients/appointments is intended for patients.

Permissions

Hospital staff should have one of the following role functions:

  • Manage_Staff_Appointments
  • View_Staff_Appointments
  • Manage_Own_Appointments
  • View_Own_Appointments
  • Patient_Proxy

Manage_Own_Appointments and View_Own_Appointments allow to view only own appolntments.

Patients are allowed to view only their own appointments and appointments of their authorized dependents.

Query string parameters

name type description value
startDate DateTime? Range for appointment start time (in current user time zone). Default - now.
endDate Default start + 30 days.
appointmentStatusCodes int[] List of appointment status codes. See enum values. Default - all.
appointmentTypeCodes int[] List of appointment type codes. See enum values. Default - all.
encounterTypeCodes int[] List of encounter type codes. See enum values. Default - all.
clinicianIds int[] List of clinician userIds. Only appointments for those clinicians are returned. Default - all.
patientIds int[] List of patients patientIds. Only appointments for those patients are returned. Default - all.
includePatientDependents bool Do include patient dependents in addition to patientIds? Default - false.
patientOrPhysicianNameFilter string This string should match part of the patient of clinician full name. Default - not use.
sortOrderFields SortOrderField[] List of fileds used to order result set. Field name may be one of the 'date' (sort by start time), 'patient' (sort by patient full name) or 'provider' (clinician full name). Default - no specific sort.
skip int How many result records to skip/return for pagination. Default 0.
take Default 20.

Result

Result is a list of appointments (of type AppointmentResponse[]) satisfying the filter. List may be empty.

Sample request

GET /api/v3/admin/appointments?startDate=2019-01-15&sortOrderFields[0][name]=date&sortOrderFields[0][direction]=Descending&includePatientDependents=true

Sample response

[
    {
        "appointmentId": "e10298a1-4115-479b-addf-ed606714b1cc",
        "patientId": 514,
        "clinicianId": 6653,
        "appointmentStatusCode": "Scheduled",
        "participants": [
            {
                "participantId": "57437f43-2607-404d-8fc4-0e1501a1b3c6",
                "person": {
                    "id": "f1557983-ca8f-445e-a1c1-8aca6199e35e",
                    "name": {
                        "given": "dejan321zivanovic",
                        "prefix": "",
                        "suffix": ""
                    },
                    "providerId": 126,
                    "statusCode": 1,
                    "contactTypeCode": 1,
                    "phones": []
                },
                "status": 1,
                "attendenceCode": 1,
                "personId": "f1557983-ca8f-445e-a1c1-8aca6199e35e",
                "participantTypeCode": 1
            },
            {
                "participantId": "a2c70bdc-de4c-4e68-a364-9c64ba5d9570",
                "person": {
                    "id": "53484dcc-83ea-4e9f-8af7-c93bbeb1445d",
                    "name": {
                        "given": "Bob",
                        "family": "Ivonoff"
                    },
                    "providerId": 126,
                    "statusCode": 1,
                    "contactTypeCode": 2,
                    "phones": [
                        {
                            "id": "e000fcbd-7668-48fe-b30c-695ed504de6b",
                            "use": "home",
                            "value": "+37511111"
                        },
                        {
                            "id": "ecc29805-0bd0-4e15-9aaa-f03b004e176f",
                            "use": "mobile",
                            "value": "+38011111"
                        }
                    ]
                },
                "status": 1,
                "attendenceCode": 1,
                "personId": "53484dcc-83ea-4e9f-8af7-c93bbeb1445d",
                "participantTypeCode": 2
            }
        ],
        "dismissed": false,
        "serviceTypeName": "qa test",
        "availabilityBlockId": "063f7c99-8432-47f6-81b2-620520b8db15",
        "waiveFee": true,
        "startTime": "2019-02-13T19:00:00+03:00",
        "endTime": "2019-02-13T19:02:00+03:00",
        "appointmentTypeCode": 1,
        "intakeMetadata": {
            "concerns": [
                {
                    "customCode": {
                        "code": 2305,
                        "description": "Fever (100+)"
                    },
                    "isPrimary": true
                }
            ],
            "additionalNotes": ""
        },
        "encounterTypeCode": 3,
        "paymentRequisites": {
            "consultationAmount": 5
        },
        "where": "",
        "whereUse": "1",
        "serviceTypeId": 1823,
        "zonedTime": {
            "timeZoneId": 20,
            "startTime": "2019-02-13T19:00:00Z",
            "endTime": "2019-02-13T19:02:00Z"
        }
    },
.....
    {
        "appointmentId": "0affb314-7684-40a7-9caa-118cd6518ff9",
        "patientId": 25937,
        "clinicianId": 6653,
        "appointmentStatusCode": "Scheduled",
        "participants": [
.....
        "paymentRequisites": {
            "cimProfileId": "15886118",
            "consultationAmount": 7
        },
        "where": "+111111",
        "whereUse": "1",
        "serviceTypeId": 307
    }
]

Clone this wiki locally