# FullStory Device Mode (Actions)

## Destination Info

* Accepts [Page](/docs/segment/connections/spec/page), [Alias](/docs/segment/connections/spec/alias), [Group](/docs/segment/connections/spec/group), [Identify](/docs/segment/connections/spec/identify), [Track](/docs/segment/connections/spec/track) calls.
* Refer to it as **Fullstory**, **Fullstory (Actions)** in the [Integrations object.](/docs/segment/guides/filtering-data/#filtering-with-the-integrations-object)
* This destination is not compatible with [Destination Insert Functions.](/docs/segment/connections/functions/insert-functions/)
* This integration is **partner owned.** Please reach out to the partner's support for any issues.

> \[!NOTE]
>
> This page is about the FullStory Device Mode (Actions). See below for information about other versions of the FullStory destination:
>
> * [FullStory (Classic)](/docs/segment/connections/destinations/catalog/fullstory)
> * [FullStory Cloud Mode (Actions)](/docs/segment/connections/destinations/catalog/actions-fullstory-cloud)

[FullStory](https://www.fullstory.com/) lets product and support teams easily understand everything about the customer experience. The Segment integration for FullStory helps accurately identify your customers within the FullStory dashboard.

FullStory's device mode Segment integration auto-captures high-fidelity user sessions and allows you to enrich FullStory data by sending user properties, page properties, and custom events from your website so you can apply it to your analysis throughout FullStory. For example, you could build a funnel to analyze drop-off of users who engaged with a certain marketing campaign.

## Benefits of FullStory Device Mode (Actions) vs FullStory Classic

* Greater control over the page properties you send.
* Send events specific to individual pages.
* Select by name the specific user properties or custom events to send.

### Overview

The FullStory device mode destination sends information about your users, pages, and related events to FullStory. It uses the [FullStory Browser API](https://developer.fullstory.com/browser/getting-started/). The recommended presets, ending in "V2", use the most up-to-date version of the [FullStory Browser API](https://developer.fullstory.com/browser/getting-started/). The corresponding non-versioned presets use the [legacy FullStory Browser API](https://developer.fullstory.com/browser/v1/getting-started/).

#### Identify user V2

If you're not familiar with the Segment Specs, take a look to understand what the [Identify method](/docs/segment/connections/spec/identify/) does. An example call would look like the following:

```javascript
analytics.identify('userId123');
```

When you use an Identify call, Segment calls FullStory's [Set Identity API](https://developer.fullstory.com/browser/identification/identify-users/). Use this to identify a user and set custom attributes which can then be used to search and segment within FullStory.

If an Identify call contains a `userId`, it will be applied to the identifying `uid` in FullStory. All `traits` will be passed along as custom user properties with the exception of `traits.name` which is mapped to `displayName`. If you set an `anonymousId` in Segment, you can search for it under `segmentAnonymousId` in FullStory.

#### Track custom event V2

If you're not familiar with the Segment Specs, take a look to understand what the [Track method](/docs/segment/connections/spec/track/) does. An example call would look like the following:

```javascript
analytics.track('Clicked Button');
```

When you use a Track call, Segment calls FullStory's [Track Event API](https://developer.fullstory.com/browser/capture-events/analytics-events/). Use this to capture more context about your user's experience on your site.

#### Viewed Page V2

If you're not familiar with the Segment Specs, take a look to understand what the [Page method](/docs/segment/connections/spec/track/) does. An example call would look like the following:

```javascript
analytics.page('Retail Page');
```

When you use a Page call, Segment calls FullStory's [Set Page Properties API](https://developer.fullstory.com/browser/set-page-properties/). Use this to set custom page names and properties about pages your users visit. Either `category` or `name` with be mapped to FullStory's `pageName` property.

## Getting started

1. From the Segment web app, click **Catalog**, then click **Destinations**.
2. Find the Destinations Actions item in the left navigation, and click it.
3. Select FullStory Device Mode (Actions), then click **Configure FullStory Device Mode (Actions)**.
4. Select an existing Source to connect to FullStory Device Mode (Actions).
5. Click Customized Setup to start from a blank mapping.

## Destination Settings

| Field                    | Description                         | Required | Type    |
| ------------------------ | ----------------------------------- | -------- | ------- |
| Debug mode               | Enables FullStory debug mode.       | No       | boolean |
| FS Org                   | The organization ID for FullStory.  | Yes      | string  |
| Capture only this iFrame | Enables FullStory inside an iframe. | No       | boolean |

## Available Presets

Fullstory (Actions) has the following presets

| Preset Name   | Trigger                 | Default Action   |
| ------------- | ----------------------- | ---------------- |
| Identify User | Event type = "identify" | Identify User V2 |
| Track Event   | Event type = "track"    | Track Event V2   |
| Viewed Page   | Event type = "page"     | Viewed Page V2   |

## Available Actions

Build your own Mappings. Combine supported [triggers](/docs/segment/connections/destinations/actions/#components-of-a-destination-action) with the following Fullstory-supported actions:

> \[!NOTE]
>
> Individual destination instances have support a maximum of 50 mappings.

* [Identify User](#identify-user-23)
* [Track Event](#track-event-37)
* [Viewed Page](#viewed-page)
* [Track Event V2](#track-event-v2-1)
* [Viewed Page V2](#viewed-page-v2)
* [Identify User V2](#identify-user-v2-1)

### Identify User

Sets user identity variables

Identify User is a **Web** action. The default Trigger is `type = "identify"`

| Field        | Description                                     | Required | Type   |
| ------------ | ----------------------------------------------- | -------- | ------ |
| User ID      | The user's id                                   | No       | STRING |
| Anonymous ID | The user's anonymous id                         | No       | STRING |
| Display Name | The user's display name                         | No       | STRING |
| Email        | The user's email                                | No       | STRING |
| Traits       | The Segment traits to be forwarded to FullStory | No       | OBJECT |

### Track Event

Track events

Track Event is a **Web** action. The default Trigger is `type = "track"`

| Field      | Description                                                                                        | Required | Type   |
| ---------- | -------------------------------------------------------------------------------------------------- | -------- | ------ |
| Name       | The name of the event.                                                                             | Yes      | STRING |
| Properties | A JSON object containing additional information about the event that will be indexed by FullStory. | No       | OBJECT |

### Viewed Page

Sets page properties events

Viewed Page is a **Web** action. The default Trigger is `type = "page"`

| Field      | Description                                 | Required | Type   |
| ---------- | ------------------------------------------- | -------- | ------ |
| Page Name  | The name of the page that was viewed.       | No       | STRING |
| Properties | The properties of the page that was viewed. | No       | OBJECT |

### Track Event V2

Track events

Track Event V2 is a **Web** action. The default Trigger is `type = "track"`

| Field      | Description                                                                                        | Required | Type   |
| ---------- | -------------------------------------------------------------------------------------------------- | -------- | ------ |
| Name       | The name of the event.                                                                             | Yes      | STRING |
| Properties | A JSON object containing additional information about the event that will be indexed by FullStory. | No       | OBJECT |

### Viewed Page V2

Sets page properties

Viewed Page V2 is a **Web** action. The default Trigger is `type = "page"`

| Field      | Description                                 | Required | Type   |
| ---------- | ------------------------------------------- | -------- | ------ |
| Page Name  | The name of the page that was viewed.       | No       | STRING |
| Properties | The properties of the page that was viewed. | No       | OBJECT |

### Identify User V2

Sets user identity properties

Identify User V2 is a **Web** action. The default Trigger is `type = "identify"`

| Field        | Description                                     | Required | Type   |
| ------------ | ----------------------------------------------- | -------- | ------ |
| User ID      | The user's id                                   | No       | STRING |
| Anonymous ID | The user's anonymous id                         | No       | STRING |
| Display Name | The user's display name                         | No       | STRING |
| Email        | The user's email                                | No       | STRING |
| Traits       | The Segment traits to be forwarded to FullStory | No       | OBJECT |

## Migration from the classic FullStory destination

Follow the table below to map your existing FullStory destination configuration to FullStory Device Mode (Actions).

### Fullstory settings mappings

#### CONNECTION SETTINGS

* **FS Org** (DEVICE-WEB):
  * Set during initial configuration, or on the Settings tab after you create the destination.

#### OTHER SETTINGS

* **Enter FS debug mode** (DEVICE-WEB):
  * Available on the Settings tab of the destination.
* **Track All Pages** (DEVICE-WEB):
  * Available as a subscription where the trigger \`Event Type is Page\` triggers the Viewed Page action.
