Skip to main content

Refresh and caching

External data sources re-fetch their data on a schedule. These options live in the datasource editor's Advanced settings panel and control how often a data source refreshes and how the resources it fetches are cached.

Refresh type

In the Refresh type field, you can define the refresh frequency for your datasource.

Refresh Frequency

Specific refresh interval in seconds

Cron Expression

Specify custom scheduling using Quartz cron syntax

  • You can also set a Time zone for the expression
Example Cron Expressions
“At 04:05.”5 4 * * * ?
"At 22:00 on every day-of-week from Monday through Friday.”0 22 * * 1-5
“At 14:00 on Sunday.”00 14 * * sun
“Every 5 minutes.”0 */5 * * * *
“Every hour.”0 0 */1 * * *
“Daily at 9:00 AM.”0 0 9 * * *

Caching

Cache external resources

Store external content (images, files) referenced in JSON locally for faster access

  • Remove broken external resource references: Broken external resource URLs will be removed from the datasource
  • Rotate cache on every update: When the datasource updates, the cache automatically removes old elements to make room for the new ones.
    • Recommended for content where the data source may contain a large number of elements that become obsolete over time, such as bus timetables or time-based events like our meetingroom solution
  • Exchange internal resource references: If this function is enabled, the cached external URLs will be replaced with the cache location

Respect cache-control header

When enabled, the data source will use the expiration time from the URL’s cache-control header to calculate the next update time to ensure that the data stays up-to-date while avoiding unnecessary requests.

Cache-control expiration is greater

  • If the cache-control expiration time is greater than the configured refresh interval or cron schedule, the data source refreshes based on the Cache-Control expiration
Example

Cache-control header:: 300s
Refresh Frequency: 60s

If the Respect Cache-Control Header switch is enabled, the datasource will refresh every 300 seconds, as the source data updates at that interval.

Therefore, checking for updates every 60 minutes would be unnecessary

Refresh interval is greater

  • If the cache-control expiration time is lesser, the data source follows the manually set refresh time
Example

Cache-control header:: 300s
Refresh Frequency: 600s

If the Respect Cache-Control Header switch is enabled, the datasource will refresh every 600 seconds, since the source can update twice within that interval.

This may lead to information loss due to missed updates.