access.fanExperienceUrl in your manifest. Once it’s in place, Build the fan surface and Publish experiences take you the rest of the way.
Access modes
The access mode decides who can open an experience and what, if anything, they pay. The creator picks it in the confirmation dialog, where the App subscription option isPAID with priceRecurring: true.
Every charge is between the fan and the creator. Payments inside experiences covers paid access, priced actions and who gets paid.
Delivery modes
Both modes append
?token= to the URL they open. The SDK’s mintPublishRequestToken produces EMBEDDED only; EXTERNAL is available through direct publish on the API.
Experience types
experienceType is one of LIVE_STREAM, LIVE_AUDIO, VIDEO, AUDIO, GAME, CHALLENGE, QUIZ, EVENT or OTHER, and defaults to OTHER. The type is presentation only. Chat cards show it as a category tag, and OTHER shows no tag.
The creator can change the type you propose in the confirmation dialog, and the token exchange returns the type they confirmed. Read it from the exchange rather than assuming your proposal survived.
How an experience is identified
An experience is one row per app, creator andexternalExperienceId. Publishing the same externalExperienceId again for the same creator updates that row in place and keeps its position on the profile.
What fans see
Fans reach an experience from four places. Signed-out visitors are sent to sign-in first.- Profile tab. The creator’s profile shows an Experiences tab listing published, non-hidden experiences. The tab is hidden when there are none.
- Detail page at
/experiences/detail/{uuid}: cover, description and the call to action.?intent=purchaseopens the checkout step directly, and?source=chat_embedmarks a visit from a chat card. - Surface page at
/experiences/{uuid}, where Fanvue renders your fan surface. - Dialog over a chat or a profile at
?experience={uuid}&exp_source=chat_embed|profile|link, when your fan surface uses dialog presentation.
EXTERNAL experiences show an open in button instead of rendering a surface.
Share links and chat cards
A chat message containing a Fanvue link to/experiences/{uuid} or /experiences/detail/{uuid} renders a card above the message bubble, and a profile link to /{handle} renders a card too. A message that is only a link renders the card in place of the bubble. Each message renders at most 3 cards per kind, and cards render for viewers whose account has chat link cards enabled.
A card shows the cover from imageUrl, the creator’s avatar and handle, badges, the category tag from experienceType, and the call to action. The description appears only on the detail page, and an unpublished experience renders as an unavailable card.
To get a good card, supply a public https cover, a short title, a type other than OTHER and a description. HIDDEN experiences are reachable only through the detail link. The SDK builds share links with experienceDetailShareUrl and experienceShareUrl.
Limits
Lifecycle and availability
A published experience survives an uninstall, an archive, a suspension and a withdrawn submission. What changes is whether fans can see it. The fan listing hides an experience while the app is unavailable, and an app is available only when all four conditions hold:- it has a current submission
- it is not suspended
- it is not archived
- the creator still has it installed