FullStory

Datafly Signal delivers events to FullStory server-to-server, enriching session replays and product analytics with backend conversion data and identity traits.

⚠️

This blueprint is currently alpha — schema and behaviour may change before GA.

Prerequisites

Before configuring FullStory in Signal, you need a FullStory account, an org, and a Server API key.

Get your FullStory credentials

Step 1: Sign in to FullStory

  1. Go to fullstory.com and sign in.
  2. Confirm you have admin access to the org you want to send events into.

Step 2: Find your Org ID

  1. Click the gear icon and open Settings.
  2. Open the FS Setup (or Data Capture > FullStory Setup) page.
  3. Copy the Org ID — a short alphanumeric identifier (e.g. o-1A2B3C-na1).

Step 3: Generate a Server API key

  1. In Settings, open API Keys.
  2. Click Create New Key.
  3. Choose Server as the key type and give it a descriptive name (e.g. “Datafly Signal”).
  4. Copy the API key immediately — it is only shown once.
⚠️

Server API keys have write access to events and user properties. Store the key in your secrets manager.

Step 4: Confirm your data region

FullStory data resides in either North America (na1) or Europe (eu1). The suffix on your Org ID indicates the region. Use the matching API base when configuring Signal. [verify with current vendor docs]

Configure the integration in Signal

Configuration Fields

FieldRequiredDescription
org_idYesYour FullStory Org ID (e.g. o-1A2B3C-na1). Found in Settings > FS Setup.
api_keyYesServer API key generated in Settings > API Keys.
data_regionNona1 (default) or eu1. Must match the region your Org is provisioned in.

Management UI Setup

  1. Go to Integrations in the sidebar.
  2. Open the Integration Library tab.
  3. Find FullStory or filter by Analytics.
  4. Click Install and enter your Org ID, API Key, and Data Region.
  5. Click Install Integration.

Management API Setup

curl -X POST http://localhost:8084/v1/admin/integration-catalog/fullstory/install \
  -H "Authorization: Bearer YOUR_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "FullStory",
    "variant": "retail",
    "config": {
      "org_id": "o-1A2B3C-na1",
      "api_key": "your_server_api_key",
      "data_region": "na1"
    },
    "delivery_mode": "server_side"
  }'

Event Mapping

The Retail variant maps the following Datafly events to FullStory event names:

Datafly EventFullStory EventNotes
pagepage_viewPage URL, title, referrer sent as event properties
Product Viewedproduct_viewedProduct details as event properties
Order CompletedpurchaseRevenue, order ID, items as event properties
Custom eventsPassed throughCustom event names sent as-is

Identity

The default blueprint forwards the following identifiers to FullStory:

SourceFullStory field
user_iduser_id
anonymous_idanonymous_id
context.ipip
context.user_agentuser_agent
context.localelocale

When datafly.identify() is called with traits (e.g. email, displayName), those are forwarded to FullStory’s user properties so server-side events resolve to the same session as the in-browser FullStory recorder.

Default consent category: analytics. FullStory’s recorder runs client-side under your existing consent banner — Signal does not load any FullStory scripts.

Verify it’s working

  1. In the Signal Management UI, open your FullStory integration and watch the Live Events stream as you trigger events on your site.
  2. Confirm 200 responses from the FullStory Server API.
  3. In FullStory, open a recent session and check the Events rail — Signal-delivered events appear alongside browser-captured events within seconds.

Troubleshooting

SymptomCauseFix
401 authentication errorInvalid API keyRegenerate the Server API key in Settings > API Keys.
404 org not foundWrong data regionConfirm data_region (na1 vs eu1) matches your Org’s region.
Events not joining sessionsuser_id mismatchEnsure the same user_id is passed to datafly.identify() and to FS.identify() in the browser.
Anonymous events not linkedAnonymous identifier mismatchPass the FullStory uid (browser-captured) into Signal so anonymous events resolve to the same visitor. [verify with current vendor docs]
Custom events missing propertiesReserved name collisionFullStory reserves some property names — rename custom properties that clash.

Blueprint

The FullStory blueprint version is 0.1.0 (alpha). It ships with a Retail variant covering page views, product views, and purchases. Session replay and product analytics event tracking.

See also

  • Pendo — alternative product analytics destination.
  • Heap — autocapture product analytics with server-side enrichment.