# External Calendar API Endpoint

With the help of the **External Calendar API Endpoint** feature, users of LearningSpace will be able to **process events** (including *date, event name,* and *room name*)  using their **software integration components** and work with the event information in any way they desire, like:

* forwarding them to external calendar applications,
* or presenting it as a static webpage.


:::warning
LearningSpace does not generate an external calendar application; **the raw data** can be used to **generate entries** to an **external (3rd party) calendar.**

:::


:::warning
***IMPORTANT -*** This process is **not a two-way flow** of information: data modified or created in an external calendar **cannot be returned/sent back to LearningSpace**.

:::


This **API endpoint** can be queried and provides data from the **LearningSpace calendar** to display outside the system on a public-facing calendar. It refers to today's and future events for the next seven days.  


:::warning
***IMPORTANT:*** For this feature to function, the LearningSpace system must be **public** (accessible over the public internet), and firewall rules should allow related traffic.

:::


With the feature enabled, when starting a **query,** events that

* **are approved**
* **start within that calendar day** (from 00:00 of the day of the query)
* **finish** **on the seventh day** of the query (at 23:59 at the latest), will be displayed.  


:::warning
**The customer's IT department should limit the public-facing calendar API’s access to only the automation that is integrated with it, because it does not have authorization enforcement.**

:::


## How to use the API

The External Calendar API Endpoint can be enabled by a **toggle** in the System Manager [**General**](/doc/general-system-information-6jNQRhhNd8) tab.

 ![](https://outline-production-attachments.s3-accelerate.amazonaws.com/uploads/03fa1014-cf0e-4191-ba80-50d24eef65d4/3be1f7f2-fd6f-451a-8679-eb51ac9cb4dc/image.png?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Content-Sha256=UNSIGNED-PAYLOAD&X-Amz-Credential=AKIA4EOUDTOVUICLPZ4P%2F20260909%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20260909T120000Z&X-Amz-Expires=86400&X-Amz-Signature=fa98bf973321d4f7fb6fa40ca6aca6958afe4924ab36219264b2d1ea534f3e5d&X-Amz-SignedHeaders=host&x-amz-checksum-mode=ENABLED&x-id=GetObject " =556x444")



## **Customizable External Calendar Sync Interval**

A new input field has been introduced for the external calendar API under the [General System Information](/doc/4b0025a1-21c7-4c85-b8f8-cb61a412938f) tab of the [System Manager](/doc/dde83ad9-36b6-41e3-9492-33a2b77fbec7) allowing users to customize the time interval it exposes. 


:::success
***NOTE:*** The value can be adjusted between 1 and 180 days.

:::


 ![](https://outline-production-attachments.s3-accelerate.amazonaws.com/uploads/03fa1014-cf0e-4191-ba80-50d24eef65d4/0c7c53a6-709e-4bc4-8d8c-112c953cc8db/sync%20%20external%20calendar_intervall.png?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Content-Sha256=UNSIGNED-PAYLOAD&X-Amz-Credential=AKIA4EOUDTOVUICLPZ4P%2F20260909%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20260909T120000Z&X-Amz-Expires=86400&X-Amz-Signature=ba1c9e80dbf30acfbfc01cc70197cf9e6c72791cfbed06dd6575d84aaf1ac116&X-Amz-SignedHeaders=host&x-amz-checksum-mode=ENABLED&x-id=GetObject " =494x378")



## **Request data in ICS format**

By copying the ICS file, it can be inserted into external calendars (Google, Outlook).

 ![](https://outline-production-attachments.s3-accelerate.amazonaws.com/uploads/03fa1014-cf0e-4191-ba80-50d24eef65d4/6cef9f01-126d-40cb-87f5-f7fca1353381/ICS%20info%20bubble.png?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Content-Sha256=UNSIGNED-PAYLOAD&X-Amz-Credential=AKIA4EOUDTOVUICLPZ4P%2F20260909%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20260909T120000Z&X-Amz-Expires=86400&X-Amz-Signature=969bd88cc046074723ce3661defa587d18ff881fd4398a0ef5841e6127b1e1bf&X-Amz-SignedHeaders=host&x-amz-checksum-mode=ENABLED&x-id=GetObject " =642x103.5")




 ![](https://outline-production-attachments.s3-accelerate.amazonaws.com/uploads/03fa1014-cf0e-4191-ba80-50d24eef65d4/8315e7a1-0a42-4db7-99d3-581b096aefe0/image.png?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Content-Sha256=UNSIGNED-PAYLOAD&X-Amz-Credential=AKIA4EOUDTOVUICLPZ4P%2F20260909%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20260909T120000Z&X-Amz-Expires=86400&X-Amz-Signature=cd18a48a798f05385305d975f48ad92006ece2bd8e242a9fbeec62b6e3436aa6&X-Amz-SignedHeaders=host&x-amz-checksum-mode=ENABLED&x-id=GetObject " =514x440")



The **ICS file** can be **refreshed** with the help of the **Refresh button.**

 ![](https://outline-production-attachments.s3-accelerate.amazonaws.com/uploads/03fa1014-cf0e-4191-ba80-50d24eef65d4/77f07ed1-c4c5-47ef-81f2-4dca0f86bd41/image.png?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Content-Sha256=UNSIGNED-PAYLOAD&X-Amz-Credential=AKIA4EOUDTOVUICLPZ4P%2F20260909%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20260909T120000Z&X-Amz-Expires=86400&X-Amz-Signature=62d1ea532a7088a7cf740f3deacf2acb54203ea55f9ec6268ec05d8a8a656852&X-Amz-SignedHeaders=host&x-amz-checksum-mode=ENABLED&x-id=GetObject " =428x101")  


:::tip
Since changes to the LearningSpace [**Calendar**](/doc/calendar-module-xtpJ2cbfqf) (e.g., adding new events) can be made frequently, make sure to **always use Refresh** before proceeding to your external calendar to get the latest content of your LS Calendar.  
**The system automatically updates the ICS link hourly**.  

 ![](https://outline-production-attachments.s3-accelerate.amazonaws.com/uploads/03fa1014-cf0e-4191-ba80-50d24eef65d4/53f68951-f866-43ab-92e7-5fb1bd02c890/image.png?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Content-Sha256=UNSIGNED-PAYLOAD&X-Amz-Credential=AKIA4EOUDTOVUICLPZ4P%2F20260909%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20260909T120000Z&X-Amz-Expires=86400&X-Amz-Signature=c6e52f29825b89fced5130e80b18fba5f1c7d81d664e4a889144179b54027859&X-Amz-SignedHeaders=host&x-amz-checksum-mode=ENABLED&x-id=GetObject " =257x41")

:::


:::info
**IMPORTANT**

**Google** Calendar updates data from LearningSpace calendars every 12 hours, and **Microsoft/Outlook** every 3-24 hours.   
Therefore, **changes** may only be visible in LearningSpace **a day later**. 

:::


:::tip
If you want to force-refresh the Calendar instantly, **unsubscribe and subscribe** to it in Outlook again.  
For more information, go to [Outlook Support](https://support.microsoft.com/en-us/office/import-or-subscribe-to-a-calendar-in-outlook-com-or-outlook-on-the-web-cff1429c-5af6-41ec-a5b4-74f2c278e98c).

:::

**Example for the ics endpoint:**

```java
BEGIN:VCALENDAR
VERSION:2.0
PRODID:Data::ICal 0.22
BEGIN:VEVENT
COLOR:turquoise
DESCRIPTION:Weekly Assessment
DTEND:20230626T101500
DTSTAMP:20230622T060102Z
DTSTART:20230626T090000
LOCATION:Sim 1 (Sim Room)
SUMMARY:ACLS Megacode Testing
UID:2023-06-26T09:00:00_ACLS Megacode Testing_Sim 1 (Sim Room)
USERS:
END:VEVENT
BEGIN:VEVENT
COLOR:turquoise
DESCRIPTION:Weekly Assessment
DTEND:20230626T101500
DTSTAMP:20230622T060102Z
DTSTART:20230626T090000
LOCATION:Sim 2 (Sim Room)
SUMMARY:ACLS Megacode Testing
UID:2023-06-26T09:00:00_ACLS Megacode Testing_Sim 2 (Sim Room)
USERS:
END:VEVENT
BEGIN:VEVENT
COLOR:turquoise
DESCRIPTION:Weekly Assessment
DTEND:20230626T101500
DTSTAMP:20230622T060102Z
DTSTART:20230626T090000
LOCATION:Sim 3 (Sim Room)
SUMMARY:ACLS Megacode Testing
UID:2023-06-26T09:00:00_ACLS Megacode Testing_Sim 3 (Sim Room)
USERS:
END:VEVENT
BEGIN:VEVENT
COLOR:turquoise
DESCRIPTION:Weekly Assessment
DTEND:20230626T101500
DTSTAMP:20230622T060102Z
DTSTART:20230626T090000
LOCATION:Sim 4 (Sim Room)
SUMMARY:ACLS Megacode Testing
UID:2023-06-26T09:00:00_ACLS Megacode Testing_Sim 4 (Sim Room)
USERS:
END:VEVENT
BEGIN:VEVENT
COLOR:turquoise
DESCRIPTION:Weekly Assessment
DTEND:20230626T101500
DTSTAMP:20230622T060102Z
DTSTART:20230626T090000
LOCATION:Sim 5 (Sim Room)
SUMMARY:ACLS Megacode Testing
UID:2023-06-26T09:00:00_ACLS Megacode Testing_Sim 5 (Sim Room)
USERS:
END:VEVENT
BEGIN:VEVENT
COLOR:turquoise
DESCRIPTION:Weekly Assessment
DTEND:20230626T101500
DTSTAMP:20230622T060102Z
DTSTART:20230626T090000
LOCATION:Sim 6 (Sim Room)
SUMMARY:ACLS Megacode Testing
UID:2023-06-26T09:00:00_ACLS Megacode Testing_Sim 6 (Sim Room)
USERS:
END:VEVENT
END:VCALENDAR }
```


:::info
For a **step-by-step guide,** go to [How to Utilize External Calendar API Endpoint](/doc/how-to-utilize-external-calendar-api-endpoint-wQEczI6ztH).

:::

  

## Request data in JSON format

By copying the JSON file, it can be inserted into external calendars (Google, Outlook).

 ![](https://outline-production-attachments.s3-accelerate.amazonaws.com/uploads/03fa1014-cf0e-4191-ba80-50d24eef65d4/f13cd8e3-398a-4ac2-8340-5857b586a849/JSON%20info%20bubble%202.png?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Content-Sha256=UNSIGNED-PAYLOAD&X-Amz-Credential=AKIA4EOUDTOVUICLPZ4P%2F20260909%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20260909T120000Z&X-Amz-Expires=86400&X-Amz-Signature=c702bb86e60b7a445103647f6e6f42f071c60eafe13a54b764dedcafa4662636&X-Amz-SignedHeaders=host&x-amz-checksum-mode=ENABLED&x-id=GetObject " =728x1152")

Information for software developers of our customers:

* use an HTTP GET request to retrieve the external-facing calendar contents as a JSON document
* the API endpoint is `https://<your.learning.space.edu>/w/api/v2/public-calendar.json`  
* the API definition is available as an OpenAPI specification at: `https://<your.learning.space.edu>/w/api/v2/openapi.yml`
* write code to parse the event list to present it or process it according to your requirements


**Example for the JSON endpoint:**

```java
{
  "events": [
    {
      "isRecurringSeries": false,
      "isPartOfRecurringSeries": true,
      "activity": {
        "color": "neonCarrot",
        "title": "ACLS Testing "
      },
      "eventStart": "2022-06-13T07:00:00Z",
      "note": "Weekly Assessment",
      "rooms": [
        {
          "location": null,
          "name": "Sim 1 (Sim Room)"
        },
        {
          "location": null,
          "name": "Sim 2 (Sim Room)"
        },
        {
          "location": null,
          "name": "Sim 3 (Sim Room)"
        },
        {
          "location": null,
          "name": "Sim 4 (Sim Room)"
        },
        {
          "location": null,
          "name": "Sim 5 (Sim Room)"
        },
        {
          "location": null,
          "name": "Sim 6 (Sim Room)"
        }
      ],
      "durationMinutes": 180,
      "title": "ACLS Megacode Testing",
      "eventEnd": "2022-06-13T10:00:00Z"
    },
    {
      "isRecurringSeries": false,
      "isPartOfRecurringSeries": false,
      "activity": {
        "color": "neonCarrot",
        "title": "SON C/O 2019 Assessment"
      },
      "eventStart": "2022-06-09T07:00:00Z",
      "note": null,
      "rooms": [
        {
          "location": null,
          "name": "Exam 1 (Exam Room)"
        }
      ],
      "durationMinutes": 135,
      "title": "Effective Assessment and Communication Skills Event",
      "eventEnd": "2022-06-09T09:15:00Z"
    }
  ],
  "eventsTo": "2022-06-16T21:59:59Z",
  "generatedAt": "2022-06-09T05:57:10Z",
  "eventsFrom": "2022-06-08T22:00:00Z"
}
```


:::info
For a **step-by-step guide,** go to [How to Utilize External Calendar API Endpoint](/doc/how-to-utilize-external-calendar-api-endpoint-wQEczI6ztH). 

See also [External Calendar API Endpoint in System Manager - Feature Notes](/doc/external-calendar-api-endpoint-in-system-manager-feature-notes-e4TLE943Oy).

For further improvements in the Calendar, see the [Inventory Module Update 2022 Spring Feature notes](/doc/inventory-module-update-2022-spring-feature-notes-XI9gGDMp9K).

:::


:::tip
For more information, visit our [System Manager](/doc/dde83ad9-36b6-41e3-9492-33a2b77fbec7) and [System - How to](/doc/system-how-to-jhrHFUlkwJ) pages.

:::

---

**Documents**

- [User Guide](https://kb.learningspace.elevatehealth.net/s/ent-hs/doc/user-guide-WPv4VxhtWB)
- [FAQ](https://kb.learningspace.elevatehealth.net/s/ent-hs/doc/faq-YoxOQOjvnY)
- [Training Videos](https://kb.learningspace.elevatehealth.net/s/ent-hs/doc/training-videos-D2ycsEwqPt)
- [Module Introduction Videos](https://kb.learningspace.elevatehealth.net/s/ent-hs/doc/module-introduction-videos-I6OQ6H7SUT)
- [Release Notes](https://kb.learningspace.elevatehealth.net/s/ent-hs/doc/release-notes-BcFFMsc0RV)
- [Distance Learning with LearningSpace](https://kb.learningspace.elevatehealth.net/s/ent-hs/doc/distance-learning-with-learningspace-eAfwW23Hxg)
- [Preventing Copy-Paste in LearningSpace](https://kb.learningspace.elevatehealth.net/s/ent-hs/doc/preventing-copy-paste-in-learningspace-sPD0IIUuk0)
- [Important Technical Notification Regarding Adobe Flash Player](https://kb.learningspace.elevatehealth.net/s/ent-hs/doc/important-technical-notification-regarding-adobe-flash-player-eQtMLwLmTJ)
- [iPad support - Technical information](https://kb.learningspace.elevatehealth.net/s/ent-hs/doc/ipad-support-technical-information-dLmeFvKofC)
- [TeamViewer Link](https://kb.learningspace.elevatehealth.net/s/ent-hs/doc/teamviewer-link-QyKZBMqUT9)
- [YouTube videos about LearningSpace](https://kb.learningspace.elevatehealth.net/s/ent-hs/doc/youtube-videos-about-learningspace-TMb3zdc0LC)
- [Customer Aftercare One-Pager](https://kb.learningspace.elevatehealth.net/s/ent-hs/doc/customer-aftercare-one-pager-GBWMe1BcfS)
- [Case Studies](https://kb.learningspace.elevatehealth.net/s/ent-hs/doc/case-studies-VcAbFqXSz7)