Adobe Journey Optimizer
Integration Value Story
Fullstory
×
Adobe Journey Optimizer

Remarketing that knows
what actually happened

AJO triggers the right campaign at the right time. But every recovery email it sends is based on what a customer did — not what they experienced. Fullstory Session Summaries give AJO the behavioral narrative it's been missing: why the session ended, what the customer intended, and how to speak to that moment directly.

✓ Verified against live API documentation AJO + Session Summaries 4 Use Case Scenarios

AJO sends the email. Fullstory writes it.

Adobe Journey Optimizer is exceptional at orchestration — knowing when to send, to whom, and across which channel. What it cannot do is know what happened in the session that triggered the journey. It fires the campaign based on an event. Fullstory explains the event.

The Fullstory Session Summaries API accepts a session ID and returns an AI-synthesized behavioral narrative: what the user was trying to do, where they encountered friction, what products held their attention, and what the most likely next action is. That narrative becomes the copy in AJO's email personalization.

The result is a remarketing email that doesn't feel like a remarketing email — because it reflects what the customer actually experienced, not a template triggered by an event type.

AJO orchestrates the journey. It doesn't know what happened in it.

Every AJO journey is triggered by an event — a page view, a basket abandonment, a session timeout. The event says what happened. It says nothing about why — or what the customer experienced in the session that preceded it.

What AJO Can't See

The Session Between the Events

AJO sees the abandonment event. It cannot observe the experience that created it — the friction, the intent, the hesitation pattern that explains exactly why this customer left.

  • Whether the customer left due to friction or simply wasn't ready to buy
  • Which specific products held their attention and for how long
  • Rage clicks on a broken promo code field or payment error
  • The intent behind a browse session — research vs. high purchase intent
  • Whether the customer encountered a bug or a UX dead end
  • What a "right message" looks like for this specific session
What Fullstory Provides

The Session Narrative

The Session Summaries API synthesizes an AI behavioral narrative from Fullstory's full-fidelity session capture — structured for direct use in AJO personalization variables.

  • Journey summary: plain-language arc of the entire session
  • Primary intent: purchase vs. research vs. comparison
  • Products of interest: specific items with dwell and scroll signals
  • Frustration signals: rage clicks, error encounters, dead ends
  • Abandonment reason: friction, indecision, or external interrupt
  • Recommended action: what to say, offer, or surface next
  • Session replay URL: linkable to AJO email for CS escalation
How the integration works

A single integration path, assessed against confirmed capabilities on both sides. No endpoints or features are assumed beyond what is documented and live.

Session Summaries — 8+ analysis profiles: The API is not one-size-fits-all. The "Adobe Remarketing v4" profile is tuned specifically for email personalization — returning structured fields that map directly to AJO template variables. Other profiles serve support triage, sales context, journey analysis, and executive narrative.

FS Anywhere → AJO → Session Summaries → Personalized Email

Behavioral signal triggers AJO journey · Session narrative enriches email copy · Session replay available for CS escalation

End-to-End Flow
🔍

Fullstory Detects Behavioral Signal

Session ends without conversion. FS observes the behavioral pattern: dwell time, products viewed, friction signals, scroll depth. A session ID and user identity are available.

FS Full Capture

FS Anywhere Fires Activation to AJO

FS Anywhere sends a server-side activation to AJO's custom action endpoint — carrying signal type, frustration score, session replay URL, device ID, and session ID.

FS Anywhere Activation AJO Custom Action
🤖

Session Summaries API Called

AJO or a middleware layer calls the Fullstory Session Summaries API with the session's device ID + session ID, requesting the "Adobe Remarketing v4" profile.

GET /v1/profiles/{id}/users/{userId}
📝

AI Narrative Returned in Seconds

The API returns structured fields: journey_summary, primary_intent, products_of_interest, frustration_signals, abandonment_reason, recommended_action. Each maps to an AJO variable.

Structured Response · 3–8s live · <50ms cached
📩

AJO Sends Behaviorally-Personalized Email

The email subject line reflects the session intent. The body references the specific products considered. The CTA matches the recommended action. The session replay URL is embedded for CS if needed.

AJO Email Personalization
Capabilities & Constraints
Structured response designed for personalization The "Adobe Remarketing v4" profile returns typed fields — not a prose blob — that slot directly into AJO email template variables without post-processing.
Session replay URL available in every activation FS Anywhere passes session_replay_url as a payload field. It can be embedded in the email for CS team access — full session context with zero customer re-explanation.
Cache-first for known sessions — instant response Preset or high-volume sessions can be pre-cached by session ID. The cached response is served in under 50ms with live API fallback for unknown sessions.
8+ profiles for different use cases The same API supports: Adobe Remarketing, Customer Support triage, Sales/AE context, Customer Success, Support Engineering, General Journey, and bare narrative. Pick the profile that matches the AJO journey goal.
Journey deduplication and frequency capping Behavioral signals can be frequent on high-traffic sites. Configure AJO re-entry rules and frequency caps to prevent a single frustration session from triggering multiple recovery emails.
Event density affects response quality Use event_limit: 200 and filter to click, change, navigate event types for high-interaction sessions to stay within the LLM context budget and maintain summary quality.
// Session Summaries API — Adobe Remarketing v4 profile GET /v1/profiles/f7eefb3d-0a10-4890-a7fb-98e08e4b2f81/users/{userId} ?device_id={device_id}&session_id={session_id} // Structured response fields { "response": { "journey_summary": "Browsed 3 SUVs, returned to CarGo Pilot twice...", "primary_intent": "High purchase intent — comparison phase", "products_of_interest": ["CarGo Pilot", "CarGo Scout"], "abandonment_reason": "Left during pricing comparison, no friction", "recommended_action": "Send comparison guide with limited-time offer" } }
Four campaign types unlocked

Each scenario uses the same integration architecture — differentiated by the behavioral signal that triggers the AJO journey and the Session Summaries profile that shapes the email.

🛒

Checkout Friction → Rescue Email

A rage click or form error at checkout triggers a recovery email that acknowledges what went wrong — not a generic "you left something behind."

1
FS detects rage click or form error loop at /checkout — session ends without purchase
2
FS Anywhere fires: signal_type=checkout_friction, frustration_score=84, session_replay_url
3
AJO enters profile into "Checkout Rescue" journey · Session Summaries (Remarketing v4) called
4
Email: "Something went wrong — let us make it right" + abandonment_reason + promo code + CS session replay link
Why This Outperforms

Generic checkout abandonment emails convert 3–5%. Friction-contextualized recovery — where the email reflects what actually happened — consistently performs 2–4× higher. The session replay link enables CS to resolve the underlying issue before a complaint is filed.

🔥

High-Intent Browse → Consideration Nudge

Deep product page dwell with no add-to-cart signals undecided high intent — not apathy. The email references the exact products the customer was comparing.

1
FS detects 5+ min on PDP with 70%+ scroll depth and no add-to-cart
2
FS Anywhere fires: signal_type=high_intent_dwell, products viewed, dwell_seconds
3
AJO enters "Consideration Nudge" journey · Session Summaries returns products_of_interest + primary_intent
4
Email: product-specific subject line, comparison guide or inventory nudge matched to the session's vehicles
Why This Outperforms

A product view event doesn't distinguish a 10-second bounce from a 6-minute consideration session. Dwell-based triggers produce higher-precision nudges — increasing revenue per send and reducing unsubscribes from irrelevant campaigns.

📩

Generic Abandonment → Session-Aware Recovery

Standard basket abandonment, reframed with behavioral context. The email knows what the customer was actually doing — not just that they left.

1
AJO receives standard basket abandonment event from Adobe Analytics
2
AJO journey pauses · Session Summaries called for the session linked to this user + event timestamp
3
API returns journey_summary: "Browsed 3 SUVs, returned to CarGo Pilot twice, left during pricing comparison"
4
Email subject: "Still comparing? Here's what sets the CarGo Pilot apart." — copy built from recommended_action
Why This Outperforms

The same AJO journey infrastructure — the only change is that Session Summaries replaces static template copy with a dynamic behavioral narrative. No new journey build required. Just a smarter personalization layer on top of what already exists.

📞

High-CLV Friction → CS Escalation

When a high-value customer hits critical friction, a CS agent is notified with the session replay and a behavioral summary — before the complaint is filed.

1
FS detects critical frustration event on a profile flagged as high-CLV
2
FS Anywhere fires with CLV tier, frustration_score, session_replay_url to AJO
3
AJO routes to CS escalation journey · Session Summaries called with "Customer Support" profile
4
CS receives: AI summary of what went wrong + session replay link + recommended resolution approach
Why This Matters

Proactive CS contact before a complaint dramatically improves NPS for high-CLV accounts. The CS agent walks into the conversation knowing exactly what happened — no customer re-explanation required, no replaying a 15-minute session manually.

Session Summaries response → AJO personalization variables

The "Adobe Remarketing v4" profile returns structured fields that map directly to AJO email template variables. No parsing, no post-processing.

🟢

Session Summaries API Response
Adobe Remarketing v4 profile

journey_summarystring
primary_intentstring
products_of_interestarray
recommended_actionstring
abandonment_reasonstring
frustration_signalsarray
engagement_depthstring
session_duration_minutesnumber
maps
to
🔴

AJO Email Personalization
Template variables + journey params

{{session_summary}}email body
{{subject_context}}subject line
{{product_1}}, {{product_2}}product cards
{{cta_copy}}primary CTA
{{why_they_left}}empathy copy
{{friction_context}}CS escalation flag
{{engagement_label}}journey branching
{{time_invested}}urgency framing
FS Anywhere payload also carries: session_replay_url, device_id, session_id, frustration_score, and identity_email — passed directly from FS into AJO as journey trigger parameters. These are available in the journey context without an additional API call.
Integration surface — verified capabilities

Every surface in this integration verified against live documentation. Nothing is inferred.

Surface Direction Status Notes
FS Anywhere Activations FS → AJO GA Server-to-server POST. Configurable trigger conditions, payload fields, and destination endpoint.
AJO Custom Action (webhook) FS → AJO GA Accepts typed parameters from external POST. Supports string, integer, boolean, JSON object fields.
AJO Journey Trigger API FS → AJO GA REST endpoint for triggering a specific journey for a profile ID from any external system.
Fullstory Session Summaries API AJO/middleware → FS GA REST. Profile ID + device_id + session_id. Returns structured response_schema and response fields.
Session Summaries — Adobe Remarketing v4 Profile FS internal GA Profile ID: f7eefb3d-0a10-4890-a7fb-98e08e4b2f81 on org 18PNWR. Tuned for email personalization output.
Session Summaries — General Journey Profile FS internal GA Profile ID: 3e50fa33-35be-4986-8dc0-818f38b90665. Use event_limit: 200, click/change/navigate only.
Session Summaries — Customer Support Profile FS internal GA Profile ID: 496f02ae-8353-4cc0-8a45-3b3234e8c19c. Returns error type, affected component, triage steps.
Session URL → device_id + session_id parsing Client-side GA Full Fullstory session URLs parseable client-side to extract device and session IDs for API calls. No manual extraction needed.
AJO Profile Update Action FS → AJO XDM GA Update profile attributes (frustration_score, last_signal_type) in the same journey action that triggers the email flow.
AJO read-back to FS (bidirectional) AJO → FS Not Available AJO does not natively POST events back to FS. Bidirectional sync requires custom middleware.
Roll out in three phases

Start with known sessions. Scale to live API. Layer frustration triggers on top.

The three phases are independent and additive. Phase 1 is deployable immediately with zero AJO changes — it just makes your existing remarketing emails smarter. Phase 2 activates behavioral triggering. Phase 3 closes the loop on frustrated high-value customers before they churn.

Phase 1

Session Summaries on existing AJO abandonment journeys

Take your current basket abandonment or browse abandonment journey. Before the email sends, call the Session Summaries API (Adobe Remarketing v4 profile) using the session ID linked to the triggering event. Slot the structured response fields into your existing AJO email template variables. No new journeys. No new triggers. Just smarter personalization on what you already have.

Phase 2

FS Anywhere → AJO behavioral triggers

Configure FS Anywhere Activations to fire on high-intent dwell and checkout friction signals. Build 2–3 new AJO journeys: Checkout Rescue, High-Intent Nudge, and Standard Abandonment with behavioral context. Embed session_replay_url in each email template. This is where measurable campaign lift over generic remarketing first appears.

Phase 3

High-CLV frustration escalation

Add a CLV-gated branch to your frustration detection journey. When a high-value customer encounters critical friction, route to a CS escalation flow using the "Customer Support" profile — structured triage output for the CS agent, session replay URL for full context. Proactive CS before the complaint = measurable NPS lift on your highest-value cohort.