Warehouse Destinations

Warehouse destinations are the main way of getting direct access to the underlying Freshpaint data. Once you've setup a data warehouse, you can run SQL over the raw Freshpaint data. Once configured, Freshpaint will sync data to your data warehouse every six hours.

Warehouses are only available for users on the Freshpaint business plan. If you are interested in setting up warehouses, email warehouses@freshpaint.io and we will walk you through the steps to configuring a warehouse destination.

Schema

Event Tables

For every event you send to a warehouse, Freshpaint will create a corresponding table. For example, if you send an event, View Homepage to your warehouse, Freshpaint will create a table, view_homepage, and load all the View Homepage events into it. All event tables have the following fields, along with any custom properties you send in your events:

Column

Description

event_name

The name of the event definition matched by the event.

time

The Unix time in seconds the event occurred at.

pageview_id

The id of the pageview the event belongs to. All events performed in the same pageview will have the same pageview_id.

session_id

The id of the session the event belongs to. A session is a group of actions perform in the same time frame. A session ends after 30 minutes of inactivity. All events performed in the same session will have the same session_id.

browser

The name of the web browser.

browser_version

The version of the web browser.

device_id

A Freshpaint generated unique identifier for the device the event was sent from. This is sometimes referred to as the anonymous_id.

host

The domain of the page the event occurred on.

initial_referrer

The full URL of the page that first referred the user to your site.

initial_referring_domain

The domain of the page that first referred the user to your site.

initial_utm_campaign

The value of utm_campaign on the user's first visit.

initial_utm_content

The value of utm_content on the user's first visit.

initial_utm_medium

The value of utm_medium on the user's first visit.

initial_utm_source

The value of utm_source on the user's first visit.

initial_utm_term

The value of utm_term on the user's first visit.

operating_system

The name of the operating system the user was using.

path

The URL path of the page the event was performed on.

referrer

The URL of the page the user was on before the page they performed the event on.

referring_domain

The domain of the page the user was on before the page they perfomed the event on. It may be your own domain.

screen_height

The height of the user's screen.

screen_width

The width of the user's screen.

url

The full URL of the page the event was performed on.

user_id

The identity associated with the user through Identify.

utm_campaign

The most recent value of the utm_campaign UTM property.

utm_content

The most recent value of the utm_content UTM property.

utm_medium

The most recent value of the utm_medium UTM property.

utm_source

The most recent value of the utm_source UTM property.

utm_term

The most recent value of the utm_term UTM property.

The Identifies Table

In addition to any event tables, you create, Freshpaint will also create an identifies table with all the identify calls you made.

Column

Description

id

The identity assigned to the user for the given identify call.

anonymous_id

The ID of the device the identify call was performed on.

sent_at

The time the identify call was performed.

The table will also contain any user properties you send in your identify calls.

Supported Warehouses

Freshpaint supports sending data to the following warehouses:

  • Azure

  • BigQuery

  • Panoply

  • Postgres

  • Redshift

  • S3

  • Snowflake