Linking Wistia as a source

Let AI connect your sources for you

Skip the manual setup — run this in your project and the wizard auto-detects your databases and APIs and connects them to PostHog.

Learn more
PostHog Wizard hedgehog

Contents

The Wistia connector syncs your Wistia video data — media, folders, channels, webinars, and viewer stats — into the PostHog data warehouse.

Prerequisites

You need a Wistia account with owner access, since only account owners can create API tokens.

Adding a data source

  1. Go to the sources tab of the data pipeline section in PostHog.
  2. Click + New source and then click Link next to Wistia.
  3. In your Wistia account, go to the API page in your account settings and create an API token. Grant the following permissions:
    • Read all folder and media data for media, folders, subfolders, captions, channels, and channel episodes
    • Read all data for tags and webinars
    • Read detailed stats for visitors, events, media stats, and account stats
  4. Back in PostHog, enter your API token, then click Next.
  5. Select the tables you want to sync, set the sync method and frequency, then click Import.

Once the syncs are complete, you can start using Wistia data in PostHog.

Available tables

TableDescriptionSync method
mediasVideos, audio files, and other media uploaded to the accountFull refresh
foldersFolders (previously called projects) that organize mediaFull refresh
subfoldersSubfolders inside each folder, used to group mediaFull refresh
tagsTags used to label mediaFull refresh
captionsCaption tracks of each media, one row per languageFull refresh
channelsChannels that present media and webinars as a seriesFull refresh
channel_episodesEpisodes within channels, linking a channel to a media or webinarFull refresh
webinarsWebinars in the account (requires a Wistia plan with webinar support)Full refresh
visitorsPeople who loaded or played videosFull refresh
eventsViewing sessions — one row each time a visitor watches a videoIncremental
media_statsLifetime viewing stats per media (one API request per media, off by default)Full refresh
account_stats_by_dateAccount-wide viewing stats, one row per dayIncremental

Incremental tables sync only new or updated records on each run. Full refresh tables reload all data on each sync.

Tables off by default

The following tables are disabled by default and can be turned on when creating or editing your source:

  • webinars — Requires a Wistia plan that includes webinars. If your plan doesn't support them, syncing this table returns a 403 permission error.
  • media_stats — Makes one API request for every media file in your account. Disabled by default to avoid high API usage on accounts with many videos.

Sync limitations

  • Wistia retains viewing events for 2 years. The events table cannot sync data older than that.
  • The events and account_stats_by_date incremental filters work at the day level. Rows from the watermark day are re-read on each sync and merged to avoid duplicates.

Configuration

OptionTypeRequired
API tokenpasswordYes

Supported tables

TableDescriptionSync methodIncremental fieldPrimary key
medias

Videos, audio files and other media uploaded to the Wistia account.

Full refresh——
folders

Folders (previously called projects) that organize media in the Wistia account.

Full refresh——
subfolders

Full refresh only. Reads the subfolders of every folder.

Full refresh——
tags

Tags used to label media in the Wistia account.

Full refresh——
captions

Caption tracks of each media, one row per language.

Full refresh——
channels

Channels that present media and webinars as a series.

Full refresh——
channel_episodes

Episodes of channels. Each episode links a channel to a media or webinar.

Full refresh——
webinars

Needs a Wistia plan that includes webinars.

Full refresh——
visitors

People who loaded or played videos in the Wistia account.

Full refresh——
events

Wistia keeps events for 2 years.

Incremental, Full refreshreceived_at—
media_stats

Full refresh only. Makes one request for each media.

Full refresh——
account_stats_by_date

Account-wide viewing stats, one row per day.

Incremental, Full refreshdate—

Troubleshooting

  • Authorization error (401): Your API token is invalid, has been revoked, or doesn't have the permission this table needs. Create a new token or update its permissions in your Wistia account settings, then reconnect.
  • Forbidden error (403): Your Wistia plan doesn't include the data in this table (for example, webinars). Turn off the table or upgrade your Wistia plan.

Still have questions?

Was this page useful?