Skip to content

Connect a Data Source

A Data Source connects Tilecast to structured information that a Widget or Layout can display. The source holds the data; the Widget or text binding controls how it appears. Tilecast Server fetches remote sources and caches the parsed data, and Studio shows the source’s status and refresh diagnostics.

Because the two are separate, one source can feed several displays. A Google Sheet of club meetings can drive a Table in the office and a Ticker in the hallway.

The Data Sources library loads up to 100 matches at a time. Search by name or filter by provider, then select Load more to browse later results.

Create Data Source catalog with feed, calendar, spreadsheet, JSON, CSV, weather, and manual-data providers.
  1. Open Content > Data Sources, then select Create Data Source.
  2. Choose a provider from the catalog offered by your Tilecast Server. Providers include RSS / Atom Feed, Calendar, Google Sheet, JSON, CSV, Weather, Transit, Status Message, alerts, and tables you edit in Studio, such as Manual Table, Announcements, Events, and Menu Items.
  3. Follow the setup checklist for that provider. Enter its connection details, map the values to typed fields when prompted, and review the preview when one is available.
  4. Select Save Data Source.

The provider determines what you configure. For example, a public calendar needs an ICS feed URL; a JSON or CSV source needs field mappings; a Manual Table lets you define typed columns and enter up to 200 rows in Studio. Installed plugins can add providers; Forms, for example, publishes approved submissions as a Data Source. The content definition reference lists the providers in your Tilecast version.

You can also create a Data Source from a Widget or Layout editor. Select Connect new data in the Choose data list. The list shows only sources that the Widget or binding can use.

Use RSS / Atom Feed for news, blog posts, and other published updates. Tilecast detects whether the address serves RSS or Atom and reads both into the same kind of records. Choose a Publisher preset, such as New York Times — Top Stories, or Custom URL to enter any feed address.

Tilecast marks what each feed field means: the title is the headline, the description is the summary, and the date is the publication time. Feeds also carry the source name, author, and link when the publisher provides them. News, Ticker, and other Widgets use these meanings to fill in their fields, so you rarely map feed fields by hand. Tilecast removes HTML from feed text and never displays it as a web page.

Feed content belongs to its publisher. Confirm that you may show a feed before you use it, and credit the publisher on screen. News can show the source name for this.

Studio used to offer separate RSS and Atom providers. Sources you created with them keep refreshing and working. New feeds use RSS / Atom Feed.

Choose Status Message to keep one current status, message, and severity in Studio. You can set an effective time or an expiry time when the status should apply for only part of a day. Connect the source to a Status Widget. The Widget shows its empty message before the effective time and at or after the expiry time.

Studio records the update time when you save. School Status sources you already created keep working, but new sources use Status Message. Both provide the same fields to a Status Widget. For the exact object fields and saved Widget mappings, see the Widgets V2 catalog contract.

Google Sheets can reach a screen in two different ways:

  • The Google Sheet Data Source reads the rows of a published sheet as records. Use it when a List, Table, Cards, Ticker, or News Widget should show the rows in Tilecast’s own design.
  • The Google Sheets — Display App shows the published spreadsheet itself, as Google draws it. Find it in Content > Widgets with the other web Apps. See Website Apps.

Both read only a sheet that is published to the web. Tilecast can’t read a private sheet.

For JSON, choose the array that contains the records, then map scalar values with RFC 6901 JSON Pointer paths. For example, if the response is { "items": [{ "name": "Chess Club", "startsAt": "2026-10-13T19:00:00Z" }] }, use /items as the record array and /name or /startsAt for fields inside each record. Tilecast does not run JavaScript, JMESPath, templates, or expressions against a response.

CSV requires a header row and maps values by exact header name. Tilecast detects comma, semicolon, tab, or pipe delimiters unless you choose one. A malformed CSV row, including invalid quoting or the wrong number of columns, fails that refresh instead of publishing a partial table.

Generic JSON, CSV, Feed, and Calendar connections do not have fields for bearer tokens, API-key headers, or OAuth. Their URLs must not contain credentials. Use an upstream endpoint that is safe to expose to Tilecast Server, or use a provider or extension package that explicitly implements the authenticated service you need.

Calendar expands supported RFC 5545 recurrence rules into a bounded upcoming window, including all-day events and daylight-saving changes. Recurrence exceptions and overridden occurrences from the feed replace the matching generated occurrence. Configure the source timezone to the calendar’s intended local timezone instead of relying on the server’s system timezone.

When you map a date field, prefer ISO dates or RFC 3339 timestamps. Tilecast can also parse the explicit month-first and day-first formats offered in Studio. An ambiguous value such as 03/04/2026 stays text under automatic detection; choose its format instead of relying on a browser, server, or Player locale to guess.

In a Widget editor, choose a compatible Data Source under Data. Studio fills in the Widget’s fields from the source, and you can change each one. See Create a Widget. In a Layout, select a text layer, switch Content mode to Dynamic field, then choose a Data Source and field. For a structured, repeatable display such as a list or ticker, use a Widget rather than a single text binding.

One Data Source can feed several Widgets and Layout bindings. Studio’s Data Source details show where it is used. If you need to remove a source, first remove every Widget and Layout binding that uses it; Tilecast prevents deleting a source that is still referenced.

Open the Data Source and check Last success, Last attempt, its status, and whether the displayed values are cached. A failed refresh keeps the last-known-good prepared data only until that source’s staleness deadline. After the deadline, consuming Widgets use their empty-state behavior instead of presenting the old records indefinitely.

A failed fetch is tried again at the source’s configured refresh interval; Tilecast does not add a separate exponential failure backoff. A provider may have its own minimum refresh interval. Fixing and saving the source schedules a new refresh.

Tilecast Server makes the remote request. The default TILECAST_SOURCE_ALLOW_PRIVATE_NETWORKS=false policy blocks private, loopback, link-local, multicast, and other non-global destinations. That check applies during validation, redirects, DNS resolution, and the final connection, so a public URL cannot bypass the policy by redirecting to a private address. An administrator must change the setting only when a source is intentionally hosted on the installation’s private network. A source hosted elsewhere must be reachable from the server, not only from your browser or the Player.

Players receive prepared source data, not the upstream URL or credentials. A Player that is offline can keep using the prepared data already in its verified manifest until its configured staleness deadline. It cannot fetch a fresh copy itself.

  • Connect a source to a Widget.
  • Bind a field to text in a Layout.
  • Read about integrations for supported connection patterns.