Freshpaint
HomeLogin
  • Documentation
    • What is Freshpaint?
    • ⚕️HIPAA Mode
    • 🏗️Building Out Your Account
    • 🌐Overview of Features
    • Guides
      • 📡Add Autotrack to your website to collect data from your users
        • Installing the Freshpaint Javascript SDK
        • Installing the Freshpaint SDK with a Content Security Policy (CSP)
        • Installing the Freshpaint Javascript SDK with Server-Side Rendering (SSR) + React
        • Autocapture + React
        • Configuring a Destination
        • Labeling User Actions
        • How do I install Freshpaint with Typescript?
      • 🔁Send historical data to any destination with Time Machine
      • Next.js Quickstart Guide
      • Android Quickstart Guide
        • Installing the Freshpaint Android SDK
        • Configuring a Destination
        • Instrumenting Your App
      • iOS Quickstart Guide
        • Installing the Freshpaint iOS SDK
        • Configuring a Destination
        • Instrumenting Your App
      • React Native Quickstart Guide
        • Installing the Freshpaint React Native SDK
        • Configuring a Destination
        • Labeling User Actions
        • Configuring Property Capture
    • Setting up Properties
    • Setting up Your Destinations
      • Enabling and Disabling a Destination
      • Deleting a Destination
    • Setting up Your Events
    • User Identification
      • Designated Identify Properties
    • Maps
    • Analytics (Beta)
      • Web Analytics Dashboard
      • Campaigns
      • Service Lines
      • Data Glossary
    • Translations
    • Web Tracker Monitoring
      • Tracker Resolution Types
      • Historical Scans
  • Integrations
    • Destinations
      • Demand Side Platforms (DSPs)
        • Basis
          • Basis Quick Start Guide
          • Basis Reference
        • Google Campaign Manager 360
        • StackAdapt
          • StackAdapt Quick Start Guide
          • StackAdapt Reference
        • theTradeDesk
          • theTradeDesk Quick Start Guide
          • theTradeDesk Reference
          • theTradeDesk with CM360 Configuration Guide
        • Viant
          • Viant Quick Start Guide
          • Viant Reference
      • Direct Response Ads
        • Facebook Conversions API
          • Facebook Conversions API Quick Start Guide
          • Facebook Conversions API Reference
        • Google Ads Conversion API
          • Google Ads Conversion API Quick Start Guide
          • Google Ads Conversions API Reference
        • Google Ads
          • Google Ads Quick Start Guide
          • Google Ads Reference
        • LinkedIn Ads
          • LinkedIn Ads Quick Start Guide
          • LinkedIn Ads Reference
        • Microsoft Ads (formerly Bing Ads)
          • Microsoft Ads Quick Start Guide
          • Microsoft Ads Reference
          • Microsoft Ads Multi-Config Reference
        • Pinterest Ads (Beta)
          • Pinterest Ads Quick Start Guide
          • Pinterest Ads Reference
        • Pinterest Tag
        • Reddit Ads
          • Reddit Ads Quick Start Guide
          • Reddit Ads Reference
        • TikTok Ads
        • Twitter Ads
      • Data Activation
        • ActiveCampaign
          • ActiveCampaign Quick Start Guide
          • ActiveCampaign Reference
        • Amplitude
          • Amplitude Quick Start Guide
          • Amplitude Reference
        • Braze (formerly Appboy)
          • Braze Quick Start Guide
          • Braze Reference
        • Customer.io
          • Customer.io Quick Start Guide
          • Customer.io Reference
        • Freshsales
        • Google Analytics 4 Proxy
          • Google Analytics 4 Proxy Quick Start Guide
          • Google Analytics 4 Proxy Reference
          • Google Analytics 4 Proxy Advanced Tracking Configurations
        • Google Analytics 4 Server-Side
          • Google Analytics 4 Server-Side Quick Start Guide
          • Google Analytics 4 Server-Side Reference
        • Heap
        • Hotjar
        • HubSpot Cloud
        • HubSpot Web
        • impact.com
          • Impact.com Quick Start Guide
          • Impact.com Reference
        • Intercom
          • Intercom Quick Start Guide
          • Intercom Reference
        • Iterable
          • Iterable Quick Start Guide
          • Iterable Reference
        • June
        • Klaviyo
        • Mixpanel
          • Mixpanel Quick Start Guide
          • Mixpanel Reference
        • OneSignal
          • OneSignal Quick Start Guide
          • OneSignal Reference
        • Sendinblue
        • Sentry
        • Vero Cloud
        • Webengage
        • Webhooks
        • Woopra
        • Zendesk
      • Data Warehouses
        • Azure Warehouse Setup
        • BigQuery Warehouse Setup
        • Databricks Warehouse Setup
        • Postgres Warehouse Setup
        • Redshift Warehouse Setup
        • S3 Warehouse Setup
        • Snowflake Warehouse Setup
      • Consent Management
        • Osano
        • OneTrust
        • Custom Consent Manager
    • Sources
      • Web
        • Autotrack
        • Precision Tracking
      • CallRail
      • Invoca
      • Customer.io
      • Intercom
      • Mailchimp
      • React Native
      • SendGrid
      • Sendinblue
      • Server-Side
      • iOS
    • 🔷Google Tag Manager integration
      • Google Tag Manager migration
      • Quick Start Guide
    • 📺Freshpaint Video Platform
    • 🖼️Impression Pixel
  • Admin Panel
    • Event Library
      • Event Library Bulk Actions
      • Event Definition Filters
      • Event Tester
      • 🔁Time Machine
      • Visual Tagger
      • Advanced Options
        • Tag Manager
        • Disabling Target Text Capture
        • Cross Domain Tracking
    • Projects & Environments
    • Teams
      • Role-Based Access Control (RBAC)
    • Transformations
      • Standard Events
      • Modify Data
      • Modify User Data
      • SQL Transformations
    • 📈Destination Monitoring
    • 🔎Investigate: Testing and Debugging
      • Live View
      • Event Verification
  • Reference
    • Developer Docs
      • Freshpaint Web SDK Reference
      • Freshpaint Web SDK Options
      • Freshpaint React Native SDK Reference
      • Freshpaint iOS SDK Reference
      • Freshpaint Android SDK Reference
      • HTTP API
    • Frequently Asked Questions
      • How do I circumvent ad blockers?
      • Can Freshpaint track users across domains?
      • Can I install Freshpaint on a Chrome extension?
      • What properties are captured with my events?
      • How Do I Switchover From Segment?
      • How Do I Switch From Native Google Analytics to the Freshpaint Google Analytics Destination?
      • Where do I find my Environment ID?
      • Is Freshpaint GDPR & CCPA Compliant?
      • Can I use transformations to anonymize data for client-side destinations?
      • How do I QA or debug my data?
      • Why Do My Numbers Differ Across Different Tools?
      • Billing: How Does Freshpaint Determine MTUs?
      • Can I Use Freshpaint on Multiple Sites?
      • How Can I Export Data From Freshpaint?
      • How Does Freshpaint Identify Users?
      • How Many Events Should I Create?
      • What Should I Name My Events?
      • How do I track scroll depth?
      • What Data Does Freshpaint Collect?
        • Data Collected on Web
        • Data Collected on React Native
      • Does Freshpaint's Autotrack slow my site down?
      • Running Freshpaint with a Proxy
      • Should my Environment ID be treated as a sensitive key?
      • How Does Freshpaint Determine Session Count?
      • What is the difference between client-side and server-side connection mode?
      • What is a Proxy Integration?
      • Where can I view Freshpaint’s Status?
      • Does Freshpaint provide HIPAA audit logs?
      • Freshpaint Cookie Too Large
      • How does Freshpaint compare to server-side Google Tag Manager?
      • If a user re-installs my app, will Freshpaint generate a new device ID?
      • Why doesn't Freshpaint need a BAA before sending data to Google Ads and Facebook Ads?
      • What Implementation Services Does Freshpaint Offer?
      • Single Sign On (SSO) Setup
Powered by GitBook
On this page
  • Getting started
  • How it works
  • Request and Response
  • Page
  • Identify
  • Considerations

Was this helpful?

  1. Admin Panel
  2. Event Library

Event Tester

Test your destinations by sending custom events to them through Freshpaint

PreviousEvent Definition FiltersNextTime Machine

Last updated 2 years ago

Was this helpful?

For destinations with a server-side connection, Freshpaint provides a way to send test events so that you can experiment. This method of testing is useful for a few reasons:

  • You can see that your destination is working as soon as you have set it up

  • You can test changes to properties in precision track events before you deploy them in your code

  • You can debug your destination's configuration (for example, how you organize events there)

Getting started

To use the event tester, locate a destination that supports server-side connection mode and click the configure button. You'll see a button for the event tester on the screen that follows:

Once you click the test event button, you'll see the tester interface, which looks like the following:

How it works

When you send test events, you begin by selecting the kind of event you want to send to your destination. You can choose any of the event definitions available in your project; these will be sent as track events. You can also choose to send a page or identify event - more on that in a second.

The event properties contains a JSON object which represents the event payload. Here's what they mean:

  • The distinct_id is the user_id of the user performing the event.

  • token is your Freshpaint environment identifier. This is what you would use to install Freshpaint's autotrack snippet on your website, and it isn't a sensitive piece of information.

  • time is time that the event will appear to be from when your event is sent to the destination. It's given as a Unix timestamp - the number of seconds elapsed since January 1, 1970.

  • You can have any number of custom properties - one is shown here as an example (named test-property).

When you're ready to send your event, click the Test Event button. You'll see something like the following as a result:

Shoot! It looks like our event didn't go through. Let's dig deeper into what we see here.

Request and Response

When you use the event tester, we show you a version of the request we made to the destination, in the form of a Unix curl command. This is so that you understand how we're communicating to the destination, and it also allows you to send the request from your computer if you wish, simply by executing the curl command yourself.

You'll notice that there's a header in the request, Api_key: REDACTED. The Iterable API Key is a sensitive password that allows access to your Iterable account. While our request to the destination included the real API key, we don't want to show it in the results to people testing a destination, so we redact that and any other sensitive information that we find.

The response shows what the destination sent back. Looking at it, we see that they say No user exists with userId test-user-id. Iterable requires that users have a known distinct id, so if we want to send a test event there, we need to give it something it will recognize.

This time, I put in an email address I knew Iterable would recognize - et voilà, it worked!

Page

In addition to track events, you can send pageview events to destinations.

In the Event Library, you can create Pageview events which will trigger the "Track" action in the destination. The Freshpaint System Page event is fired the same way, when a user loads a new page, but it will instead trigger automatic pageview actions (supported by certain destinations).

Identify

You can send identify events to your destinations, in addition to track events. When you try that, you'll see that the event structure looks a little bit different:

You'll see some of the same fields used in the example above, and some other ones. Let's look at what's new:

  • $device_id is the session identifier. Everyone user that can be tracked by Freshpaint has a device id that indicates their session. We send this identifier to the destination so that they can attribute anonymous track events to the person being identified with distinct_id.

  • $user_props is a collection of related properties which will also be attributed to the user. In this case, we're sending firstname and lastname, although you can send any named property that you wish, with any data that you want.

Testing identify events otherwise works just like testing track events.

Considerations

  • You will be sending real events to your destinations with the event tester, so if you prefer to not to retain test data there, you'll need to delete those test events from your destination later.

  • Some destinations charge by the number of events you send them, so you may be incurring some real costs for the test events you send them!

Click the "Test Event" button to open the event tester