Single API - Cornerstone Integration
Problem
Cornerstone, a Gladstone partner, builds timetables that are displayed on your website and branded to your requirements. These timetables are not live. Cornerstone uses the Single API to extract timetable data from your Gladstone system on a schedule. As a result, your online timetable can have missing activities, or be out of date between updates.
Root Cause
- Cornerstone maintains its own list of activity IDs. If an activity ID no longer exists in your Gladstone system, the API returns
400 Bad Requestand no data for that call. - The API has no unique identifier or last-modified value for tracking changes to activities or reservation slots. Cornerstone cannot tell which records have changed, so it has to reload all of the data, which is resource-intensive.
Resolution
Understanding the data flow
- Cornerstone calls the Single API on a schedule (not in real time) to pull timetable data from your Gladstone system.
- Cornerstone processes and transposes this data, then stores it in its own database for display online.
API domains and endpoints
- Cornerstone uses endpoints under the
https://*.gladstonesoftware.clouddomain for timetable integrations. - Any deep-linking buttons on the timetable use the usual
https://*.gladstonego.clouddomain. - Known endpoints Cornerstone uses include:
- Cornerstone uses endpoints under the
Known limitations and workarounds
- Activities that no longer exist:
- When a non-existent activity ID is queried, the API returns
400 Bad Requestand no data for that call. - There is currently no way in the API to skip invalid activity IDs and return data for the valid ones.
- When a non-existent activity ID is queried, the API returns
- Tracking modified activities:
- The API has no last-modified date and time, or unique identifier, for change tracking.
- Cornerstone must delete all records and reload the complete dataset to keep the timetable accurate.
- Activities that no longer exist:
Notes
- Several local-authority operators publish class and swimming timetables driven by this integration, covering both exercise classes and pool sessions.
- This article does not list every endpoint Cornerstone uses, or its full process flow.
- Cornerstone has requested improvements to the Single API for more efficient error handling and change tracking.