Appearance
Data Sources
Data Sources let your screens display live, real-world information — weather, transit schedules, social media feeds, stock prices, sports scores, or data from your own systems.
Once connected, a data source updates automatically in the background. Any page that uses it shows fresh data without you having to touch anything.

How it works
- You connect a data source (an integration or a custom API)
- Lumicast polls it on a schedule and stores the latest values
- In the Page Editor, you bind fields from the data source to text elements
- Screens display the current values and update automatically
Adding a data source
Go to Data Sources and click New data source.

Choose how to connect:
Built-in integrations
Pre-built polling integrations — no OAuth required. Lumicast calls the service on a schedule and stores the result:
| Integration | What it provides |
|---|---|
| Weather | Current conditions and forecasts for any location |
| NS (Dutch railways) | Live departure boards for any station |
| Traffic | Live traffic information (Netherlands) |
| News | Headlines from major news sources |
| Sunrise / Sunset | Daily sunrise and sunset times for a location |
| GitHub | Data from a GitHub repository |
Connection-based integrations
These integrations require connecting an external account (OAuth or API token). Go to Connections to set them up, then reference the connection when creating a data source:
| Service | Notes |
|---|---|
| Google Sheets | Reads data from a spreadsheet |
| Google Calendar | Reads events from a calendar |
| Airtable | Reads records from a base |
| Microsoft Teams | Team data |
| Microsoft SharePoint | Lists, news, and more |
| Jira | Issues and project data |
| Company page data | |
| GitHub | Repository data (alternative to the built-in polling) |
| GitLab / GitLab Cloud | Repository and CI data |
| Zermelo | School timetable data |
| Stripe | Payment and revenue data |
| Linear | Issue tracking data |
| Sentry | Error and performance data |
| Plausible | Analytics data |
Generic (Custom API)
Connect to any HTTP endpoint. You configure:
- The URL to call
- Any headers or authentication tokens needed
- How often to poll (e.g. every 5 minutes)
- Which fields from the JSON response to use
You can also receive data via webhook (Lumicast listens for incoming HTTP calls), subscribe to an RSS feed, or import an iCal calendar — all without OAuth.
For webhook data sources, you can optionally require signed requests so only senders who hold your signing secret can push data in. See Webhook Signing for Data Sources.
Use generic data sources for your own backend, a CRM export endpoint, or any web service that returns data.
Using data in pages
After setting up a data source, open the Page Editor and bind it to a text layer (for a single value) or a group (to repeat a layout for each item in a list).
See Binding Live Data to Pages for a step-by-step guide.
Checking data source status
On the Data Sources page, each source shows when it last updated successfully and whether the last fetch succeeded or failed.
If a source is failing, check that the URL and credentials are still correct.