Server-Side

This doc covers information on sending server side events into Freshpaint.

When to track events server-side vs. client-side

The Javascript source is the easiest way to collect data with Freshpaint. The Javascript source automatically collects data from your site and lets you retroactively create events from the collected data.

We recommend that you track events server-side in the following scenarios:

  1. Offsite events: when a user interaction is not on a website or app (for example, using your API)

  2. Revenue events: the event for completing a purchase (for example, a user may click the 'Purchase' button, but that purchase may time out)

Sometimes you can make an argument for tracking an event either client-side or server-side. We recommend that you should only consider tracking events server-side in the following scenario:

  1. Essential events to operations: For example, events that you trigger a critical email drip from (so that users don't get left out or sent the wrong emails).

Sending Server-side events to Freshpaint

To send server-side events to Freshpaint, you should use the Freshpaint HTTP API. Take a look at HTTP API reference for how to go about sending events to Freshpaint.

Sending Server-side events to Destinations

After sending a server side event to Freshpaint, you will see it show up in the server-side section on the events page. From here, you'll be able to send the event to any of the Destinations you've set up in Freshpaint.

Supported Server Side Destinations

Not all destinations accept server-side events. Here's a list of destinations you can send server-side events to:

  • Amplitude

  • Azure Synapse Analytics

  • BigQuery

  • Customer.io

  • Google Analytics

  • Iterable

  • Klaviyo

  • Mixpanel

  • MySQL

  • Panolpy

  • Postgres

  • Redshift

  • S3

  • Snowflake