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

Availability Blocks API

jay-lee00 edited this page Feb 12, 2019 · 1 revision

Get a list availability blocks for given parameters.

GET v2.1/clinicians/availability-blocks


Request

Headers
X-Developer-Id developer id
X-Api-Key api key
Authorization Bearer {{access_token}}
Time-Zone optional, timezone of time fields in response.
default: login user's timezone
 
Parameters (QueryString)
startDate datetime default Today
endDate datetime default startDate + 1 year
clinicianIds int (array) optional, array of clinician userIds

sample request

GET /api/v2.1/clinicians/availability-blocks?startDate=2019-02-12&endDate=2019-02-19&clinicianIds=2338 HTTP/1.1
Host: api.qa2.snapvcm.com
X-Developer-Id:  {{apiDeveloperId}}
X-Api-Key:  {{apiKey}}
Authorization:  Bearer {{accessToken}}
time-zone:  Alaskan Standard Time
cache-control: no-cache
Postman-Token: 23b19e19-54b9-46e9-9631-f62234cecf9c

sample response:
{
    "data": [
        {
            "id": "e6a190fa-7ab8-421b-b5f0-ef7fa2e715d5",
            "rule": {
                "id": "6d06e520-42cc-4781-a1c0-f34a8a833662",
                "createdByUserId": 2338,
                "modifiedByUserId": 2338,
                "createdDate": "2019-02-05T23:54:53.403Z",
                "modifiedDate": "2019-02-08T19:35:10.74Z",
                "fromDate": "2019-02-07T23:00:00-09:00",
                "toDate": "2019-03-01T19:00:00-09:00",
                "repeatInterval": 1,
                "repeatOn": [
                    2,
                    3,
                    4,
                    5,
                    6
                ],
                "repeatPeriod": 1
            },
            "clinician": {
                "availabilityBlockId": "e6a190fa-7ab8-421b-b5f0-ef7fa2e715d5",
                "createdByUserId": 2338,
                "modifiedByUserId": 2338,
                "createdDate": "2019-02-05T14:54:54.68-09:00",
                "modifiedDate": "2019-02-08T10:35:11.587-09:00",
                "clinicianId": 2338,
                "locked": false,
                "private": false
            },
            "createdByUserId": 2338,
            "modifiedByUserId": 2338,
            "createdDate": "2019-02-05T14:54:54.68-09:00",
            "modifiedDate": "2019-02-08T10:35:11.587-09:00",
            "modifiedByUserName": "Jay Lee",
            "endTime": "2019-02-12T19:00:00-09:00",
            "startTime": "2019-02-12T10:30:00-09:00",
            "allowOnDemandAppt": true,
            "allowProviderAppt": true,
            "allowSelfAppt": true,
            "isAvailable": true,
            "optimizationTypeCode": 0
        },
        {
            "id": "c6380e5b-5909-44cc-9917-662b3387c2b2",
            "clinician": {
                "availabilityBlockId": "c6380e5b-5909-44cc-9917-662b3387c2b2",
                "createdByUserId": 2338,
                "createdDate": "2019-02-12T12:08:03.017-09:00",
                "clinicianId": 2338,
                "locked": false,
                "private": false
            },
            "createdByUserId": 2338,
            "createdDate": "2019-02-12T12:08:03.017-09:00",
            "endTime": "2019-02-12T21:00:00-09:00",
            "startTime": "2019-02-12T19:00:00-09:00",
            "allowOnDemandAppt": false,
            "allowProviderAppt": true,
            "allowSelfAppt": true,
            "isAvailable": true,
            "optimizationTypeCode": 0
        },
        {
            "id": "e41364d1-9f78-4143-9dbd-4b1c1d7bcdd9",
            "clinician": {
                "availabilityBlockId": "e41364d1-9f78-4143-9dbd-4b1c1d7bcdd9",
                "createdByUserId": 2301,
                "createdDate": "2019-02-12T12:26:17.897-09:00",
                "clinicianId": 2338,
                "locked": false,
                "private": false
            },
            "createdByUserId": 2301,
            "createdDate": "2019-02-12T12:26:17.897-09:00",
            "endTime": "2019-02-12T22:00:00-09:00",
            "startTime": "2019-02-12T21:00:00-09:00",
            "allowOnDemandAppt": true,
            "allowProviderAppt": true,
            "allowSelfAppt": true,
            "isAvailable": true,
            "optimizationTypeCode": 0
        },
        {
            "id": "b0780d0c-c2c1-4ab2-af24-0fc97e9ec512",
            "clinician": {
                "availabilityBlockId": "b0780d0c-c2c1-4ab2-af24-0fc97e9ec512",
                "createdByUserId": 2301,
                "createdDate": "2019-02-12T12:22:15.34-09:00",
                "clinicianId": 2338,
                "locked": false,
                "private": false
            },
            "createdByUserId": 2301,
            "createdDate": "2019-02-12T12:22:15.34-09:00",
            "endTime": "2019-02-13T00:00:00-09:00",
            "startTime": "2019-02-12T23:00:00-09:00",
            "allowOnDemandAppt": false,
            "allowProviderAppt": true,
            "allowSelfAppt": true,
            "isAvailable": true,
            "optimizationTypeCode": 0
        },
        {
            "id": "f219f0f2-5bcd-4a36-9c36-e00cf214f582",
            "clinician": {
                "availabilityBlockId": "f219f0f2-5bcd-4a36-9c36-e00cf214f582",
                "createdByUserId": 2338,
                "createdDate": "2019-02-12T10:48:16.973-09:00",
                "clinicianId": 2338,
                "locked": false,
                "private": false
            },
            "createdByUserId": 2338,
            "createdDate": "2019-02-12T10:48:16.973-09:00",
            "endTime": "2019-02-13T10:30:00-09:00",
            "startTime": "2019-02-13T07:00:00-09:00",
            "allowOnDemandAppt": true,
            "allowProviderAppt": true,
            "allowSelfAppt": true,
            "isAvailable": true,
            "optimizationTypeCode": 0
        },
        {
            "id": "eaed02f2-a54e-4f4e-ab85-335fcc973aa5",
            "rule": {
                "id": "6d06e520-42cc-4781-a1c0-f34a8a833662",
                "createdByUserId": 2338,
                "modifiedByUserId": 2338,
                "createdDate": "2019-02-05T23:54:53.403Z",
                "modifiedDate": "2019-02-08T19:35:10.74Z",
                "fromDate": "2019-02-07T23:00:00-09:00",
                "toDate": "2019-03-01T19:00:00-09:00",
                "repeatInterval": 1,
                "repeatOn": [
                    2,
                    3,
                    4,
                    5,
                    6
                ],
                "repeatPeriod": 1
            },
            "clinician": {
                "availabilityBlockId": "eaed02f2-a54e-4f4e-ab85-335fcc973aa5",
                "createdByUserId": 2338,
                "modifiedByUserId": 2338,
                "createdDate": "2019-02-05T14:54:54.68-09:00",
                "modifiedDate": "2019-02-08T10:35:11.587-09:00",
                "clinicianId": 2338,
                "locked": false,
                "private": false
            },
            "createdByUserId": 2338,
            "modifiedByUserId": 2338,
            "createdDate": "2019-02-05T14:54:54.68-09:00",
            "modifiedDate": "2019-02-08T10:35:11.587-09:00",
            "modifiedByUserName": "Jay Lee",
            "endTime": "2019-02-13T19:00:00-09:00",
            "startTime": "2019-02-13T10:30:00-09:00",
            "allowOnDemandAppt": true,
            "allowProviderAppt": true,
            "allowSelfAppt": true,
            "isAvailable": true,
            "optimizationTypeCode": 0
        },
        {
            "id": "e803adec-9254-45a3-ae9d-b6b95dae715e",
            "rule": {
                "id": "6d06e520-42cc-4781-a1c0-f34a8a833662",
                "createdByUserId": 2338,
                "modifiedByUserId": 2338,
                "createdDate": "2019-02-05T23:54:53.403Z",
                "modifiedDate": "2019-02-08T19:35:10.74Z",
                "fromDate": "2019-02-07T23:00:00-09:00",
                "toDate": "2019-03-01T19:00:00-09:00",
                "repeatInterval": 1,
                "repeatOn": [
                    2,
                    3,
                    4,
                    5,
                    6
                ],
                "repeatPeriod": 1
            },
            "clinician": {
                "availabilityBlockId": "e803adec-9254-45a3-ae9d-b6b95dae715e",
                "createdByUserId": 2338,
                "modifiedByUserId": 2338,
                "createdDate": "2019-02-05T14:54:54.68-09:00",
                "modifiedDate": "2019-02-08T10:35:11.587-09:00",
                "clinicianId": 2338,
                "locked": false,
                "private": false
            },
            "createdByUserId": 2338,
            "modifiedByUserId": 2338,
            "createdDate": "2019-02-05T14:54:54.68-09:00",
            "modifiedDate": "2019-02-08T10:35:11.587-09:00",
            "modifiedByUserName": "Jay Lee",
            "endTime": "2019-02-14T19:00:00-09:00",
            "startTime": "2019-02-14T10:30:00-09:00",
            "allowOnDemandAppt": true,
            "allowProviderAppt": true,
            "allowSelfAppt": true,
            "isAvailable": true,
            "optimizationTypeCode": 0
        },
        {
            "id": "439730ec-1993-4af0-b408-4c8102d9367f",
            "rule": {
                "id": "6d06e520-42cc-4781-a1c0-f34a8a833662",
                "createdByUserId": 2338,
                "modifiedByUserId": 2338,
                "createdDate": "2019-02-05T23:54:53.403Z",
                "modifiedDate": "2019-02-08T19:35:10.74Z",
                "fromDate": "2019-02-07T23:00:00-09:00",
                "toDate": "2019-03-01T19:00:00-09:00",
                "repeatInterval": 1,
                "repeatOn": [
                    2,
                    3,
                    4,
                    5,
                    6
                ],
                "repeatPeriod": 1
            },
            "clinician": {
                "availabilityBlockId": "439730ec-1993-4af0-b408-4c8102d9367f",
                "createdByUserId": 2338,
                "modifiedByUserId": 2338,
                "createdDate": "2019-02-05T14:54:54.68-09:00",
                "modifiedDate": "2019-02-08T10:35:11.6-09:00",
                "clinicianId": 2338,
                "locked": false,
                "private": false
            },
            "createdByUserId": 2338,
            "modifiedByUserId": 2338,
            "createdDate": "2019-02-05T14:54:54.68-09:00",
            "modifiedDate": "2019-02-08T10:35:11.6-09:00",
            "modifiedByUserName": "Jay Lee",
            "endTime": "2019-02-15T19:00:00-09:00",
            "startTime": "2019-02-15T10:30:00-09:00",
            "allowOnDemandAppt": true,
            "allowProviderAppt": true,
            "allowSelfAppt": true,
            "isAvailable": true,
            "optimizationTypeCode": 0
        },
        {
            "id": "79998792-cf3c-475e-bec4-5ffb4114bf45",
            "rule": {
                "id": "6d06e520-42cc-4781-a1c0-f34a8a833662",
                "createdByUserId": 2338,
                "modifiedByUserId": 2338,
                "createdDate": "2019-02-05T23:54:53.403Z",
                "modifiedDate": "2019-02-08T19:35:10.74Z",
                "fromDate": "2019-02-07T23:00:00-09:00",
                "toDate": "2019-03-01T19:00:00-09:00",
                "repeatInterval": 1,
                "repeatOn": [
                    2,
                    3,
                    4,
                    5,
                    6
                ],
                "repeatPeriod": 1
            },
            "clinician": {
                "availabilityBlockId": "79998792-cf3c-475e-bec4-5ffb4114bf45",
                "createdByUserId": 2338,
                "createdDate": "2019-02-08T10:35:11.6-09:00",
                "clinicianId": 2338,
                "locked": false,
                "private": false
            },
            "createdByUserId": 2338,
            "createdDate": "2019-02-08T10:35:11.6-09:00",
            "endTime": "2019-02-18T19:00:00-09:00",
            "startTime": "2019-02-18T10:30:00-09:00",
            "allowOnDemandAppt": true,
            "allowProviderAppt": true,
            "allowSelfAppt": true,
            "isAvailable": true,
            "optimizationTypeCode": 0
        }
    ],
    "total": 9
}

Get an availability-block for given availabilityBlockId.


GET v2.1/clinicians/availability-blocks/{{availabilityBlockId}}

Request
Headers
X-Developer-Id developer id
X-Api-Key api key
Authorization Bearer {{access_token}}
Time-Zone optional, timezone of time fields in response.
default: login user's timezone
 
sample request
GET /api/v2.1/clinicians/availability-blocks/c6380e5b-5909-44cc-9917-662b3387c2b2 HTTP/1.1
Host: api.qa2.snapvcm.com
X-Developer-Id:  {{apiDeveloperId}}
X-Api-Key:  {{apiKey}}
Authorization:  Bearer {{accessToken}}
time-zone:  Alaskan Standard Time
cache-control: no-cache
Postman-Token: b8c81053-3c40-49c6-bb89-eb209becf77f

sample response:
{
    "data": [
        {
            "id": "c6380e5b-5909-44cc-9917-662b3387c2b2",
            "clinician": {
                "availabilityBlockId": "c6380e5b-5909-44cc-9917-662b3387c2b2",
                "createdByUserId": 2338,
                "createdDate": "2019-02-12T12:08:03.0166667-09:00",
                "clinicianId": 2338,
                "locked": false,
                "private": false
            },
            "createdByUserId": 2338,
            "createdDate": "2019-02-12T12:08:03.017-09:00",
            "endTime": "2019-02-12T21:00:00-09:00",
            "startTime": "2019-02-12T19:00:00-09:00",
            "allowOnDemandAppt": false,
            "allowProviderAppt": true,
            "allowSelfAppt": true,
            "isAvailable": true,
            "optimizationTypeCode": 0
        }
    ],
    "total": 1
}

Create an availability-block.


POST v2.1/clinicians/availability-blocks

Request
Headers
X-Developer-Id developer id
X-Api-Key api key
Authorization Bearer {{access_token}}
Time-Zone optional, timezone of time fields in request and response.
default: UTC
 
Parameters (Body)
startDate datetime required
endDate datetime required
clinician {clinicianId:int, locked:bool, private:bool} required
allowOnDemandAppt bool default: false
allowProviderAppt bool default: false
allowSelfAppt bool default: false
isAllDay bool default: false
isAvailable bool default: false
optimizationTypeCodeId int 1 single booking, 2 double booking

sample request
POST /api/v2.1/clinicians/availability-blocks HTTP/1.1
Host: api.qa2.snapvcm.com
Content-Type: application/json; charset=UTF-8
X-Developer-Id:  {{apiDeveloperId}}
X-Api-Key:  {{apiKey}}
Authorization:  Bearer {{accessToken}}
time-zone:  Alaskan Standard Time
cache-control: no-cache
Postman-Token: b8c81053-3c40-49c6-bb89-eb209becf77f
{
	"isAllDay":false,
	"allowOnDemandAppt":true,
	"allowProviderAppt":true,
	"allowSelfAppt":true,
	"isAvailable":true,
	"optimizationTypeCodeId":1,
	"clinician":{
		"clinicianId":2338,
		"locked":false,
		"private":false
	},
	"startTime":"2019-02-12T21:00:00",
	"endTime":"2019-02-12T22:00:00"
}------WebKitFormBoundary7MA4YWxkTrZu0gW--

sample response:
{
    "data": [
        {
            "id": "e41364d1-9f78-4143-9dbd-4b1c1d7bcdd9",
            "clinician": {
                "availabilityBlockId": "e41364d1-9f78-4143-9dbd-4b1c1d7bcdd9",
                "createdByUserId": 2301,
                "createdDate": "2019-02-12T12:26:17.896971-09:00",
                "clinicianId": 2338,
                "locked": false,
                "private": false
            },
            "createdByUserId": 2301,
            "createdDate": "2019-02-12T12:26:17.896971-09:00",
            "endTime": "2019-02-12T22:00:00-09:00",
            "startTime": "2019-02-12T21:00:00-09:00",
            "allowOnDemandAppt": true,
            "allowProviderAppt": true,
            "allowSelfAppt": true,
            "isAvailable": true,
            "optimizationTypeCode": 0
        }
    ],
    "total": 1
}

Update an availability-block.


PUT v2.1/clinicians/availability-blocks/{{availabilityBlockId}}

Request
Headers
X-Developer-Id developer id
X-Api-Key api key
Authorization Bearer {{access_token}}
Time-Zone optional, timezone of time fields in request and response.
default: UTC
 
Parameters (Body)
startDate datetime required
endDate datetime required
clinician {clinicianId:int, locked:bool, private:bool} required
allowOnDemandAppt bool default: false
allowProviderAppt bool default: false
allowSelfAppt bool default: false
isAllDay bool default: false
isAvailable bool default: false
optimizationTypeCodeId int 1 single booking, 2 double booking

sample request
PUT /api/v2.1/clinicians/availability-blocks/e41364d1-9f78-4143-9dbd-4b1c1d7bcdd9 HTTP/1.1
Host: api.qa2.snapvcm.com
Content-Type: application/json; charset=UTF-8
X-Developer-Id:  {{apiDeveloperId}}
X-Api-Key:  {{apiKey}}
Authorization:  Bearer {{accessToken}}
time-zone:  Alaskan Standard Time
cache-control: no-cache
Postman-Token: b8c81053-3c40-49c6-bb89-eb209becf77f
{
	"isAllDay":false,
	"allowOnDemandAppt":true,
	"allowProviderAppt":true,
	"allowSelfAppt":false,
	"isAvailable":true,
	"optimizationTypeCodeId":1,
	"clinician":{
		"clinicianId":2338,
		"locked":false,
		"private":false
	},
	"startTime":"2019-02-12T21:00:00",
	"endTime":"2019-02-12T22:00:00"
}------WebKitFormBoundary7MA4YWxkTrZu0gW--

sample response:
{
    "data": [
        {
            "id": "e41364d1-9f78-4143-9dbd-4b1c1d7bcdd9",
            "clinician": {
                "availabilityBlockId": "e41364d1-9f78-4143-9dbd-4b1c1d7bcdd9",
                "createdByUserId": 2301,
                "modifiedByUserId": 2301,
                "createdDate": "2019-02-12T12:26:17.8966667-09:00",
                "modifiedDate": "2019-02-12T13:10:11.4026518-09:00",
                "clinicianId": 2338,
                "locked": false,
                "private": false
            },
            "createdByUserId": 2301,
            "modifiedByUserId": 2301,
            "createdDate": "2019-02-12T12:26:17.897-09:00",
            "modifiedDate": "2019-02-12T13:10:11.4026518-09:00",
            "modifiedByUserName": "First Last",
            "endTime": "2019-02-12T22:00:00-09:00",
            "startTime": "2019-02-12T21:00:00-09:00",
            "allowOnDemandAppt": true,
            "allowProviderAppt": true,
            "allowSelfAppt": false,
            "isAvailable": true,
            "optimizationTypeCode": 0
        }
    ],
    "total": 1
}

Clone this wiki locally