API: Calendar
« Back to the API Documentation overview - authentication, security, response codes, and the full endpoint list.
Events on the members-area calendar. Defaults to today through the next 30 days.
| HTTP Request Type | GET |
| Calling URI | https://www.YourDepartment.com/apps/api/calendar/ |
| Request Header | Authorization: Bearer {access_token} |
| Success Codes | 200 OK |
| Failure Codes | 400, 401, 403, 404, 405, 429, 500 - see the error reference |
Parameters
| Parameter | Description |
ID |
Optional. A single event ID. |
CalendarID |
Optional. Limit to one calendar (Calendar_ID). |
StartDate / EndDate |
Optional. Date range; events overlapping the range are returned. Defaults: today / +30 days. |
All data endpoints also accept the common MaxRows
(default 100, maximum 500) and StartRow paging parameters.
Response Properties
| Property | Description |
Cal_ID |
Event ID (number) |
Calendar_ID / Calendar |
Calendar ID and name |
Cal_Title |
Event title (string) |
Cal_StartDate / Cal_EndDate |
Event dates (string, yyyy-mm-dd) |
Cal_AllDay |
1 = all-day event (number) |
Cal_StartTime / Cal_EndTime |
Times when not all-day (string) |
Cal_Location / Cal_POC / Cal_Text |
Location, point of contact, details (string) |
Cal_CreatedDate / Cal_ModifiedDate |
Created and last modified date/time (string) |
Author / ModifiedBy |
Creating and modifying member names; ModifiedBy is empty if never modified (string) |
Records are returned in the items array of the
standard response envelope.
Sample Code
Exchange your refresh token for an access token, then request data. The same two steps
work in any language; JavaScript and Python are shown here.
JavaScript
const BASE = "https://www.YourDepartment.com/apps/api";
const REFRESH_TOKEN = "your-refresh-token-here";
// 1. Exchange the refresh token for an access token (do this from a server,
// not from a public web page, so the refresh token stays secret)
const tokenRes = await fetch(`${BASE}/refresh/`, {
method: "POST",
headers: { "Authorization": `Bearer ${REFRESH_TOKEN}` }
});
const tokenData = await tokenRes.json();
// 2. Call the calendar endpoint (reuse the token for up to 24 hours)
const res = await fetch(`${BASE}/calendar/?MaxRows=10`, {
headers: { "Authorization": `Bearer ${tokenData.access_token}` }
});
const data = await res.json();
data.items.forEach(item => console.log(item));
Python
import requests
BASE = "https://www.YourDepartment.com/apps/api"
REFRESH_TOKEN = "your-refresh-token-here"
# 1. Exchange the refresh token for an access token
token = requests.post(f"{BASE}/refresh/",
headers={"Authorization": f"Bearer {REFRESH_TOKEN}"}).json()
# 2. Call the calendar endpoint (reuse the token for up to 24 hours)
data = requests.get(f"{BASE}/calendar/",
params={"MaxRows": 10},
headers={"Authorization": f"Bearer {token['access_token']}"}).json()
for item in data["items"]:
print(item)
|