Embed URLs and parameters

Build the address your page loads, and control which experience appears, in which language and variant.

2 min read

For whoever writes the embed code. Every embed starts from an address in Studio, with parameters added. To change which experience a page shows, you edit this address.

The address to load

Here the experience host is play.lindenhall.example, and the campaign link is lindenhall-autumn-workshops:

What you wantAddress
One touchpoint, opened directlyhttps://play.lindenhall.example/lindenhall-autumn-workshops?c=<touchpoint-id>&embedded=1
A specific space inside an experiencehttps://play.lindenhall.example/lindenhall-autumn-workshops?s=<space-id>&embedded=1
The campaign's landing page, if it has onehttps://play.lindenhall.example/lindenhall-autumn-workshops?embedded=1

Without a landing page, the campaign link has nothing to open, so use a touchpoint link.

Include embedded=1 when you write the iframe yourself. It tells the experience it's inside your page, which changes how its height, panels and sign-in work: see What your page must handle. Without it, the experience behaves as though it owns the whole window. The JavaScript tag adds embedded=1 for you.

Parameters

ParameterControlsNotes
embeddedEmbedded mode1 when the page around the frame sizes it and scrolls to panels, as the JavaScript tag does. Leave it out in a WebView, or in a frame fixed to the screen.
cWhich touchpoint opensLeave it out to open the landing page, if the campaign has one
sWhich space opensFor experiences that have spaces
lLanguageOpens the experience in this language, if the campaign offers it. Without l, the visitor's last choice, or else the campaign's default. With an l the campaign doesn't offer, the campaign's default.
vVariantOpens a specific variant of the experience
fciWhich customer is signing inOnly with customer accounts set up: see Pass a known customer into an experience
loginSign-in state when the page loads0 starts the experience signed out, even for a participant who signed in before. 1 sends the visitor through sign-in before anything shows. Neither applies on the return from sign-in. The JavaScript tag sets it: see Sign-in state.
frameoriginWhere sign-in returnsYour page's full address. Needs embedded=1 and frameparam: see A parent page written by hand.
frameparamWhich parameter of your page names the experienceSet it to id: the return from sign-in always uses id.

Set l when the page around the experience is already in one language, so the two don't disagree.

Where the IDs come from

The campaign link, touchpoint ID, space ID and variant ID all come from the campaign in Studio. See Touchpoint URLs & slugs for where each one appears.

Test the address on its own first

Open the address in a normal browser tab before you put it in a page. If it doesn't work on its own, it won't work embedded, and you'd spend the debugging time in the wrong place.

Next steps

On this page